Skip to content

Commit 7fb3f49

Browse files
feat: [google-cloud-securitycenter] added more information about DDoS attack in cloud armor proto (#13527)
BEGIN_COMMIT_OVERRIDE feat: added more information about DDoS attack in cloud armor proto feat: added data access event fields to finding proto docs: Clarified comments for tag_values field in resource_value_config to make it clear that field represents tag value ids, not tag values END_COMMIT_OVERRIDE - [ ] Regenerate this pull request now. feat: added data access event fields to finding proto docs: Clarified comments for tag_values field in resource_value_config to make it clear that field represents tag value ids, not tag values PiperOrigin-RevId: 726529258 Source-Link: googleapis/googleapis@f2ce5f2 Source-Link: googleapis/googleapis-gen@853c69d Copy-Tag: eyJwIjoicGFja2FnZXMvZ29vZ2xlLWNsb3VkLXNlY3VyaXR5Y2VudGVyLy5Pd2xCb3QueWFtbCIsImgiOiI4NTNjNjlkMDQ1NjZmNDljNDE3MGMzYzViNmI1ZWQzZjMwNzVjNDk0In0= --------- Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
1 parent 770cf0f commit 7fb3f49

File tree

17 files changed

+541
-12
lines changed

17 files changed

+541
-12
lines changed

packages/google-cloud-securitycenter/google/cloud/securitycenter_v2/__init__.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,11 @@
3838
from .types.connection import Connection
3939
from .types.contact_details import Contact, ContactDetails
4040
from .types.container import Container
41+
from .types.data_access_event import DataAccessEvent
42+
from .types.data_flow_event import DataFlowEvent
43+
from .types.data_retention_deletion_event import DataRetentionDeletionEvent
4144
from .types.database import Database
45+
from .types.disk import Disk
4246
from .types.exfiltration import ExfilResource, Exfiltration
4347
from .types.external_system import ExternalSystem
4448
from .types.file import File
@@ -169,11 +173,15 @@
169173
"CreateSourceRequest",
170174
"Cve",
171175
"Cvssv3",
176+
"DataAccessEvent",
177+
"DataFlowEvent",
178+
"DataRetentionDeletionEvent",
172179
"Database",
173180
"DeleteBigQueryExportRequest",
174181
"DeleteMuteConfigRequest",
175182
"DeleteNotificationConfigRequest",
176183
"DeleteResourceValueConfigRequest",
184+
"Disk",
177185
"EnvironmentVariable",
178186
"ExfilResource",
179187
"Exfiltration",

packages/google-cloud-securitycenter/google/cloud/securitycenter_v2/services/security_center/async_client.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,11 @@
6666
compliance,
6767
connection,
6868
container,
69+
data_access_event,
70+
data_flow_event,
71+
data_retention_deletion_event,
6972
database,
73+
disk,
7074
exfiltration,
7175
)
7276
from google.cloud.securitycenter_v2.types import (

packages/google-cloud-securitycenter/google/cloud/securitycenter_v2/services/security_center/client.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,11 @@
8383
compliance,
8484
connection,
8585
container,
86+
data_access_event,
87+
data_flow_event,
88+
data_retention_deletion_event,
8689
database,
90+
disk,
8791
exfiltration,
8892
)
8993
from google.cloud.securitycenter_v2.types import (

packages/google-cloud-securitycenter/google/cloud/securitycenter_v2/services/security_center/transports/rest_base.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1373,6 +1373,10 @@ def _get_http_options():
13731373
"method": "get",
13741374
"uri": "/v2/{parent=organizations/*/simulations/*}/attackPaths",
13751375
},
1376+
{
1377+
"method": "get",
1378+
"uri": "/v2/{parent=organizations/*}/attackPaths",
1379+
},
13761380
{
13771381
"method": "get",
13781382
"uri": "/v2/{parent=organizations/*/simulations/*/valuedResources/*}/attackPaths",
@@ -1794,6 +1798,10 @@ def _get_http_options():
17941798
"method": "get",
17951799
"uri": "/v2/{parent=organizations/*/simulations/*/attackExposureResults/*}/valuedResources",
17961800
},
1801+
{
1802+
"method": "get",
1803+
"uri": "/v2/{parent=organizations/*}/valuedResources",
1804+
},
17971805
]
17981806
return http_options
17991807

packages/google-cloud-securitycenter/google/cloud/securitycenter_v2/types/__init__.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,11 @@
3232
from .connection import Connection
3333
from .contact_details import Contact, ContactDetails
3434
from .container import Container
35+
from .data_access_event import DataAccessEvent
36+
from .data_flow_event import DataFlowEvent
37+
from .data_retention_deletion_event import DataRetentionDeletionEvent
3538
from .database import Database
39+
from .disk import Disk
3640
from .exfiltration import ExfilResource, Exfiltration
3741
from .external_system import ExternalSystem
3842
from .file import File
@@ -150,7 +154,11 @@
150154
"Contact",
151155
"ContactDetails",
152156
"Container",
157+
"DataAccessEvent",
158+
"DataFlowEvent",
159+
"DataRetentionDeletionEvent",
153160
"Database",
161+
"Disk",
154162
"ExfilResource",
155163
"Exfiltration",
156164
"ExternalSystem",

packages/google-cloud-securitycenter/google/cloud/securitycenter_v2/types/cloud_armor.py

Lines changed: 20 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -187,17 +187,35 @@ class Attack(proto.Message):
187187
r"""Information about DDoS attack volume and classification.
188188
189189
Attributes:
190-
volume_pps (int):
190+
volume_pps_long (int):
191191
Total PPS (packets per second) volume of
192192
attack.
193-
volume_bps (int):
193+
volume_bps_long (int):
194194
Total BPS (bytes per second) volume of
195195
attack.
196196
classification (str):
197197
Type of attack, for example, 'SYN-flood',
198198
'NTP-udp', or 'CHARGEN-udp'.
199+
volume_pps (int):
200+
Total PPS (packets per second) volume of attack. Deprecated
201+
- refer to volume_pps_long instead.
202+
volume_bps (int):
203+
Total BPS (bytes per second) volume of attack. Deprecated -
204+
refer to volume_bps_long instead.
199205
"""
200206

207+
volume_pps_long: int = proto.Field(
208+
proto.INT64,
209+
number=4,
210+
)
211+
volume_bps_long: int = proto.Field(
212+
proto.INT64,
213+
number=5,
214+
)
215+
classification: str = proto.Field(
216+
proto.STRING,
217+
number=3,
218+
)
201219
volume_pps: int = proto.Field(
202220
proto.INT32,
203221
number=1,
@@ -206,10 +224,6 @@ class Attack(proto.Message):
206224
proto.INT32,
207225
number=2,
208226
)
209-
classification: str = proto.Field(
210-
proto.STRING,
211-
number=3,
212-
)
213227

214228

215229
__all__ = tuple(sorted(__protobuf__.manifest))
Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
# -*- coding: utf-8 -*-
2+
# Copyright 2024 Google LLC
3+
#
4+
# Licensed under the Apache License, Version 2.0 (the "License");
5+
# you may not use this file except in compliance with the License.
6+
# You may obtain a copy of the License at
7+
#
8+
# http://www.apache.org/licenses/LICENSE-2.0
9+
#
10+
# Unless required by applicable law or agreed to in writing, software
11+
# distributed under the License is distributed on an "AS IS" BASIS,
12+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
# See the License for the specific language governing permissions and
14+
# limitations under the License.
15+
#
16+
from __future__ import annotations
17+
18+
from typing import MutableMapping, MutableSequence
19+
20+
from google.protobuf import timestamp_pb2 # type: ignore
21+
import proto # type: ignore
22+
23+
__protobuf__ = proto.module(
24+
package="google.cloud.securitycenter.v2",
25+
manifest={
26+
"DataAccessEvent",
27+
},
28+
)
29+
30+
31+
class DataAccessEvent(proto.Message):
32+
r"""Details about a data access attempt made by a principal not
33+
authorized under applicable data security policy.
34+
35+
Attributes:
36+
event_id (str):
37+
Unique identifier for data access event.
38+
principal_email (str):
39+
The email address of the principal that
40+
accessed the data. The principal could be a user
41+
account, service account, Google group, or
42+
other.
43+
operation (google.cloud.securitycenter_v2.types.DataAccessEvent.Operation):
44+
The operation performed by the principal to
45+
access the data.
46+
event_time (google.protobuf.timestamp_pb2.Timestamp):
47+
Timestamp of data access event.
48+
"""
49+
50+
class Operation(proto.Enum):
51+
r"""The operation of a data access event.
52+
53+
Values:
54+
OPERATION_UNSPECIFIED (0):
55+
The operation is unspecified.
56+
READ (1):
57+
Represents a read operation.
58+
MOVE (2):
59+
Represents a move operation.
60+
COPY (3):
61+
Represents a copy operation.
62+
"""
63+
OPERATION_UNSPECIFIED = 0
64+
READ = 1
65+
MOVE = 2
66+
COPY = 3
67+
68+
event_id: str = proto.Field(
69+
proto.STRING,
70+
number=1,
71+
)
72+
principal_email: str = proto.Field(
73+
proto.STRING,
74+
number=2,
75+
)
76+
operation: Operation = proto.Field(
77+
proto.ENUM,
78+
number=3,
79+
enum=Operation,
80+
)
81+
event_time: timestamp_pb2.Timestamp = proto.Field(
82+
proto.MESSAGE,
83+
number=4,
84+
message=timestamp_pb2.Timestamp,
85+
)
86+
87+
88+
__all__ = tuple(sorted(__protobuf__.manifest))
Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
# -*- coding: utf-8 -*-
2+
# Copyright 2024 Google LLC
3+
#
4+
# Licensed under the Apache License, Version 2.0 (the "License");
5+
# you may not use this file except in compliance with the License.
6+
# You may obtain a copy of the License at
7+
#
8+
# http://www.apache.org/licenses/LICENSE-2.0
9+
#
10+
# Unless required by applicable law or agreed to in writing, software
11+
# distributed under the License is distributed on an "AS IS" BASIS,
12+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
# See the License for the specific language governing permissions and
14+
# limitations under the License.
15+
#
16+
from __future__ import annotations
17+
18+
from typing import MutableMapping, MutableSequence
19+
20+
from google.protobuf import timestamp_pb2 # type: ignore
21+
import proto # type: ignore
22+
23+
__protobuf__ = proto.module(
24+
package="google.cloud.securitycenter.v2",
25+
manifest={
26+
"DataFlowEvent",
27+
},
28+
)
29+
30+
31+
class DataFlowEvent(proto.Message):
32+
r"""Details about a data flow event, in which either the data is
33+
moved to or is accessed from a non-compliant geo-location, as
34+
defined in the applicable data security policy.
35+
36+
Attributes:
37+
event_id (str):
38+
Unique identifier for data flow event.
39+
principal_email (str):
40+
The email address of the principal that
41+
initiated the data flow event. The principal
42+
could be a user account, service account, Google
43+
group, or other.
44+
operation (google.cloud.securitycenter_v2.types.DataFlowEvent.Operation):
45+
The operation performed by the principal for
46+
the data flow event.
47+
violated_location (str):
48+
Non-compliant location of the principal or
49+
the data destination.
50+
event_time (google.protobuf.timestamp_pb2.Timestamp):
51+
Timestamp of data flow event.
52+
"""
53+
54+
class Operation(proto.Enum):
55+
r"""The operation of a data flow event.
56+
57+
Values:
58+
OPERATION_UNSPECIFIED (0):
59+
The operation is unspecified.
60+
READ (1):
61+
Represents a read operation.
62+
MOVE (2):
63+
Represents a move operation.
64+
COPY (3):
65+
Represents a copy operation.
66+
"""
67+
OPERATION_UNSPECIFIED = 0
68+
READ = 1
69+
MOVE = 2
70+
COPY = 3
71+
72+
event_id: str = proto.Field(
73+
proto.STRING,
74+
number=1,
75+
)
76+
principal_email: str = proto.Field(
77+
proto.STRING,
78+
number=2,
79+
)
80+
operation: Operation = proto.Field(
81+
proto.ENUM,
82+
number=3,
83+
enum=Operation,
84+
)
85+
violated_location: str = proto.Field(
86+
proto.STRING,
87+
number=4,
88+
)
89+
event_time: timestamp_pb2.Timestamp = proto.Field(
90+
proto.MESSAGE,
91+
number=5,
92+
message=timestamp_pb2.Timestamp,
93+
)
94+
95+
96+
__all__ = tuple(sorted(__protobuf__.manifest))

0 commit comments

Comments
 (0)