Skip to content

Commit 6e014b5

Browse files
Google APIscopybara-github
authored andcommitted
feat: Add AffectedResources proto
feat: Add AiModel proto feat: Add ChokePoint proto feat: Add IpRules proto feat: Add Job proto feat: Add Network proto PiperOrigin-RevId: 777661751
1 parent 7482661 commit 6e014b5

21 files changed

+749
-8
lines changed

google/cloud/securitycenter/v2/BUILD.bazel

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,14 @@ proto_library(
2525
name = "securitycenter_proto",
2626
srcs = [
2727
"access.proto",
28+
"affected_resources.proto",
29+
"ai_model.proto",
2830
"application.proto",
2931
"attack_exposure.proto",
3032
"attack_path.proto",
3133
"backup_disaster_recovery.proto",
3234
"bigquery_export.proto",
35+
"chokepoint.proto",
3336
"cloud_armor.proto",
3437
"cloud_dlp_data_profile.proto",
3538
"cloud_dlp_inspection.proto",
@@ -50,13 +53,16 @@ proto_library(
5053
"group_membership.proto",
5154
"iam_binding.proto",
5255
"indicator.proto",
56+
"ip_rules.proto",
57+
"job.proto",
5358
"kernel_rootkit.proto",
5459
"kubernetes.proto",
5560
"label.proto",
5661
"load_balancer.proto",
5762
"log_entry.proto",
5863
"mitre_attack.proto",
5964
"mute_config.proto",
65+
"network.proto",
6066
"notebook.proto",
6167
"notification_config.proto",
6268
"notification_message.proto",
@@ -71,6 +77,7 @@ proto_library(
7177
"source.proto",
7278
"toxic_combination.proto",
7379
"valued_resource.proto",
80+
"vertex_ai.proto",
7481
"vulnerability.proto",
7582
],
7683
deps = [
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
// Copyright 2025 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+
// http://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+
syntax = "proto3";
16+
17+
package google.cloud.securitycenter.v2;
18+
19+
option csharp_namespace = "Google.Cloud.SecurityCenter.V2";
20+
option go_package = "cloud.google.com/go/securitycenter/apiv2/securitycenterpb;securitycenterpb";
21+
option java_multiple_files = true;
22+
option java_outer_classname = "AffectedResourcesProto";
23+
option java_package = "com.google.cloud.securitycenter.v2";
24+
option php_namespace = "Google\\Cloud\\SecurityCenter\\V2";
25+
option ruby_package = "Google::Cloud::SecurityCenter::V2";
26+
27+
// Details about resources affected by this finding.
28+
message AffectedResources {
29+
// The count of resources affected by the finding.
30+
int64 count = 1;
31+
}
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
// Copyright 2025 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+
// http://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+
syntax = "proto3";
16+
17+
package google.cloud.securitycenter.v2;
18+
19+
option csharp_namespace = "Google.Cloud.SecurityCenter.V2";
20+
option go_package = "cloud.google.com/go/securitycenter/apiv2/securitycenterpb;securitycenterpb";
21+
option java_multiple_files = true;
22+
option java_outer_classname = "AiModelProto";
23+
option java_package = "com.google.cloud.securitycenter.v2";
24+
option php_namespace = "Google\\Cloud\\SecurityCenter\\V2";
25+
option ruby_package = "Google::Cloud::SecurityCenter::V2";
26+
27+
// Contains information about the AI model associated with the finding.
28+
message AiModel {
29+
// The platform on which the model is deployed.
30+
enum DeploymentPlatform {
31+
// Unspecified deployment platform.
32+
DEPLOYMENT_PLATFORM_UNSPECIFIED = 0;
33+
34+
// Vertex AI.
35+
VERTEX_AI = 1;
36+
37+
// Google Kubernetes Engine.
38+
GKE = 2;
39+
}
40+
41+
// The name of the AI model, for example, "gemini:1.0.0".
42+
string name = 1;
43+
44+
// The domain of the model, for example, “image-classification”.
45+
string domain = 2;
46+
47+
// The name of the model library, for example, “transformers”.
48+
string library = 3;
49+
50+
// The region in which the model is used, for example, “us-central1”.
51+
string location = 4;
52+
53+
// The publisher of the model, for example, “google” or “nvidia”.
54+
string publisher = 5;
55+
56+
// The platform on which the model is deployed.
57+
DeploymentPlatform deployment_platform = 6;
58+
59+
// The user defined display name of model. Ex. baseline-classification-model
60+
string display_name = 7;
61+
}
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
// Copyright 2025 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+
// http://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+
syntax = "proto3";
16+
17+
package google.cloud.securitycenter.v2;
18+
19+
option csharp_namespace = "Google.Cloud.SecurityCenter.V2";
20+
option go_package = "cloud.google.com/go/securitycenter/apiv2/securitycenterpb;securitycenterpb";
21+
option java_multiple_files = true;
22+
option java_outer_classname = "ChokepointProto";
23+
option java_package = "com.google.cloud.securitycenter.v2";
24+
option php_namespace = "Google\\Cloud\\SecurityCenter\\V2";
25+
option ruby_package = "Google::Cloud::SecurityCenter::V2";
26+
27+
// Contains details about a chokepoint, which is a resource or resource group
28+
// where high-risk attack paths converge, based on [attack path simulations]
29+
// (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations).
30+
message Chokepoint {
31+
// List of resource names of findings associated with this chokepoint.
32+
// For example, organizations/123/sources/456/findings/789.
33+
// This list will have at most 100 findings.
34+
repeated string related_findings = 1;
35+
}

google/cloud/securitycenter/v2/disk.proto

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,6 @@ option ruby_package = "Google::Cloud::SecurityCenter::V2";
2727
// Contains information about the disk associated with the finding.
2828
message Disk {
2929
// The name of the disk, for example,
30-
// `https://www.googleapis.com/compute/v1/projects/{project-id}/zones/{zone-id}/disks/{disk-id}`.
30+
// "https://www.googleapis.com/compute/v1/projects/{project-id}/zones/{zone-id}/disks/{disk-id}".
3131
string name = 1;
3232
}

google/cloud/securitycenter/v2/file.proto

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,33 @@ message File {
3838
string relative_path = 2;
3939
}
4040

41+
// Operation(s) performed on a file.
42+
message FileOperation {
43+
// The type of the operation
44+
enum OperationType {
45+
// The operation is unspecified.
46+
OPERATION_TYPE_UNSPECIFIED = 0;
47+
48+
// Represents an open operation.
49+
OPEN = 1;
50+
51+
// Represents a read operation.
52+
READ = 2;
53+
54+
// Represents a rename operation.
55+
RENAME = 3;
56+
57+
// Represents a write operation.
58+
WRITE = 4;
59+
60+
// Represents an execute operation.
61+
EXECUTE = 5;
62+
}
63+
64+
// The type of the operation
65+
OperationType type = 1;
66+
}
67+
4168
// Absolute path of the file as a JSON encoded string.
4269
string path = 1;
4370

@@ -62,4 +89,7 @@ message File {
6289

6390
// Path of the file in terms of underlying disk/partition identifiers.
6491
DiskPath disk_path = 7;
92+
93+
// Operation(s) performed on a file.
94+
repeated FileOperation operations = 8;
6595
}

google/cloud/securitycenter/v2/finding.proto

Lines changed: 37 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,12 @@ package google.cloud.securitycenter.v2;
1919
import "google/api/field_behavior.proto";
2020
import "google/api/resource.proto";
2121
import "google/cloud/securitycenter/v2/access.proto";
22+
import "google/cloud/securitycenter/v2/affected_resources.proto";
23+
import "google/cloud/securitycenter/v2/ai_model.proto";
2224
import "google/cloud/securitycenter/v2/application.proto";
2325
import "google/cloud/securitycenter/v2/attack_exposure.proto";
2426
import "google/cloud/securitycenter/v2/backup_disaster_recovery.proto";
27+
import "google/cloud/securitycenter/v2/chokepoint.proto";
2528
import "google/cloud/securitycenter/v2/cloud_armor.proto";
2629
import "google/cloud/securitycenter/v2/cloud_dlp_data_profile.proto";
2730
import "google/cloud/securitycenter/v2/cloud_dlp_inspection.proto";
@@ -40,17 +43,21 @@ import "google/cloud/securitycenter/v2/file.proto";
4043
import "google/cloud/securitycenter/v2/group_membership.proto";
4144
import "google/cloud/securitycenter/v2/iam_binding.proto";
4245
import "google/cloud/securitycenter/v2/indicator.proto";
46+
import "google/cloud/securitycenter/v2/ip_rules.proto";
47+
import "google/cloud/securitycenter/v2/job.proto";
4348
import "google/cloud/securitycenter/v2/kernel_rootkit.proto";
4449
import "google/cloud/securitycenter/v2/kubernetes.proto";
4550
import "google/cloud/securitycenter/v2/load_balancer.proto";
4651
import "google/cloud/securitycenter/v2/log_entry.proto";
4752
import "google/cloud/securitycenter/v2/mitre_attack.proto";
53+
import "google/cloud/securitycenter/v2/network.proto";
4854
import "google/cloud/securitycenter/v2/notebook.proto";
4955
import "google/cloud/securitycenter/v2/org_policy.proto";
5056
import "google/cloud/securitycenter/v2/process.proto";
5157
import "google/cloud/securitycenter/v2/security_marks.proto";
5258
import "google/cloud/securitycenter/v2/security_posture.proto";
5359
import "google/cloud/securitycenter/v2/toxic_combination.proto";
60+
import "google/cloud/securitycenter/v2/vertex_ai.proto";
5461
import "google/cloud/securitycenter/v2/vulnerability.proto";
5562
import "google/protobuf/struct.proto";
5663
import "google/protobuf/timestamp.proto";
@@ -239,9 +246,13 @@ message Finding {
239246
// Describes a potential security risk to data assets that contain sensitive
240247
// data.
241248
SENSITIVE_DATA_RISK = 8;
249+
250+
// Describes a resource or resource group where high risk attack paths
251+
// converge, based on attack path simulations (APS).
252+
CHOKEPOINT = 9;
242253
}
243254

244-
// The [relative resource
255+
// Identifier. The [relative resource
245256
// name](https://cloud.google.com/apis/design/resource_names#relative_resource_name)
246257
// of the finding. The following list shows some examples:
247258
//
@@ -255,7 +266,7 @@ message Finding {
255266
// + `projects/{project_id}/sources/{source_id}/findings/{finding_id}`
256267
// +
257268
// `projects/{project_id}/sources/{source_id}/locations/{location_id}/findings/{finding_id}`
258-
string name = 1;
269+
string name = 1 [(google.api.field_behavior) = IDENTIFIER];
259270

260271
// Output only. The canonical name of the finding. The following list shows
261272
// some examples:
@@ -464,9 +475,15 @@ message Finding {
464475
// Contains information about the org policies associated with the finding.
465476
repeated OrgPolicy org_policies = 43;
466477

478+
// Job associated with the finding.
479+
Job job = 44;
480+
467481
// Represents an application associated with the finding.
468482
Application application = 45;
469483

484+
// IP rules associated with the finding.
485+
IpRules ip_rules = 46;
486+
470487
// Fields related to Backup and DR findings.
471488
BackupDisasterRecovery backup_disaster_recovery = 47;
472489

@@ -506,6 +523,24 @@ message Finding {
506523
// Data flow events associated with the finding.
507524
repeated DataFlowEvent data_flow_events = 62;
508525

526+
// Represents the VPC networks that the resource is attached to.
527+
repeated Network networks = 63;
528+
509529
// Data retention deletion events associated with the finding.
510530
repeated DataRetentionDeletionEvent data_retention_deletion_events = 64;
531+
532+
// AffectedResources associated with the finding.
533+
AffectedResources affected_resources = 65;
534+
535+
// The AI model associated with the finding.
536+
AiModel ai_model = 66;
537+
538+
// Contains details about a chokepoint, which is a resource or resource group
539+
// where high-risk attack paths converge, based on [attack path simulations]
540+
// (https://cloud.google.com/security-command-center/docs/attack-exposure-learn#attack_path_simulations).
541+
// This field cannot be updated. Its value is ignored in all update requests.
542+
Chokepoint chokepoint = 69;
543+
544+
// VertexAi associated with the finding.
545+
VertexAi vertex_ai = 72;
511546
}

google/cloud/securitycenter/v2/group_membership.proto

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,9 @@ message GroupMembership {
3434

3535
// Group represents a toxic combination.
3636
GROUP_TYPE_TOXIC_COMBINATION = 1;
37+
38+
// Group represents a chokepoint.
39+
GROUP_TYPE_CHOKEPOINT = 3;
3740
}
3841

3942
// Type of group.

google/cloud/securitycenter/v2/indicator.proto

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ message Indicator {
7171
SIGNATURE_TYPE_FILE = 2;
7272
}
7373

74+
// The signature.
7475
oneof signature {
7576
// Signature indicating that a binary family was matched.
7677
MemoryHashSignature memory_hash_signature = 6;

0 commit comments

Comments
 (0)