yandexcloud 0.294.0__py3-none-any.whl → 0.296.0__py3-none-any.whl

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.

Potentially problematic release.


This version of yandexcloud might be problematic. Click here for more details.

Files changed (119) hide show
  1. yandex/cloud/ai/foundation_models/v1/image_generation/image_generation_pb2.py +5 -3
  2. yandex/cloud/ai/foundation_models/v1/image_generation/image_generation_pb2.pyi +28 -1
  3. yandex/cloud/backup/v1/resource_pb2.py +16 -14
  4. yandex/cloud/backup/v1/resource_pb2.pyi +38 -1
  5. yandex/cloud/billing/v1/customer_service_pb2.pyi +1 -1
  6. yandex/cloud/billing/v1/sku_service_pb2.pyi +1 -0
  7. yandex/cloud/compute/v1/instance_pb2.pyi +1 -3
  8. yandex/cloud/compute/v1/instance_service_pb2.py +26 -26
  9. yandex/cloud/compute/v1/instance_service_pb2.pyi +5 -1
  10. yandex/cloud/datasphere/v2/jobs/jobs_pb2.py +40 -32
  11. yandex/cloud/datasphere/v2/jobs/jobs_pb2.pyi +78 -1
  12. yandex/cloud/datasphere/v2/jobs/project_job_service_pb2.py +56 -54
  13. yandex/cloud/datasphere/v2/jobs/project_job_service_pb2.pyi +21 -6
  14. yandex/cloud/datasphere/v2/project_service_pb2.py +34 -30
  15. yandex/cloud/datasphere/v2/project_service_pb2.pyi +13 -3
  16. yandex/cloud/iam/v1/api_key_service_pb2.py +13 -3
  17. yandex/cloud/iam/v1/api_key_service_pb2.pyi +53 -0
  18. yandex/cloud/iam/v1/api_key_service_pb2_grpc.py +34 -0
  19. yandex/cloud/iam/v1/api_key_service_pb2_grpc.pyi +20 -0
  20. yandex/cloud/iot/devices/v1/registry_pb2.py +13 -13
  21. yandex/cloud/iot/devices/v1/registry_pb2.pyi +4 -0
  22. yandex/cloud/iot/devices/v1/registry_service_pb2.py +23 -3
  23. yandex/cloud/iot/devices/v1/registry_service_pb2.pyi +64 -0
  24. yandex/cloud/iot/devices/v1/registry_service_pb2_grpc.py +68 -0
  25. yandex/cloud/iot/devices/v1/registry_service_pb2_grpc.pyi +40 -0
  26. yandex/cloud/mdb/greenplum/v1/pxf_pb2.pyi +226 -52
  27. yandex/cloud/mdb/kafka/v1/cluster_pb2.py +42 -35
  28. yandex/cloud/mdb/kafka/v1/cluster_pb2.pyi +32 -2
  29. yandex/cloud/mdb/mongodb/v1/cluster_service_pb2.pyi +13 -7
  30. yandex/cloud/mdb/postgresql/v1/user_pb2.pyi +33 -16
  31. yandex/cloud/organizationmanager/v1/os_login_service_pb2.py +20 -20
  32. yandex/cloud/organizationmanager/v1/os_login_service_pb2.pyi +2 -2
  33. yandex/cloud/serverless/functions/v1/function_pb2.py +30 -28
  34. yandex/cloud/serverless/functions/v1/function_pb2.pyi +5 -1
  35. yandex/cloud/serverless/functions/v1/function_service_pb2.py +38 -36
  36. yandex/cloud/serverless/functions/v1/function_service_pb2.pyi +5 -1
  37. yandex/cloud/smartcaptcha/__init__.py +0 -0
  38. yandex/cloud/smartcaptcha/v1/__init__.py +0 -0
  39. yandex/cloud/smartcaptcha/v1/captcha_pb2.py +100 -0
  40. yandex/cloud/smartcaptcha/v1/captcha_pb2.pyi +500 -0
  41. yandex/cloud/smartcaptcha/v1/captcha_pb2_grpc.py +4 -0
  42. yandex/cloud/smartcaptcha/v1/captcha_pb2_grpc.pyi +17 -0
  43. yandex/cloud/smartcaptcha/v1/captcha_service_pb2.py +76 -0
  44. yandex/cloud/smartcaptcha/v1/captcha_service_pb2.pyi +268 -0
  45. yandex/cloud/smartcaptcha/v1/captcha_service_pb2_grpc.py +242 -0
  46. yandex/cloud/smartcaptcha/v1/captcha_service_pb2_grpc.pyi +152 -0
  47. yandex/cloud/smartwebsecurity/__init__.py +0 -0
  48. yandex/cloud/smartwebsecurity/v1/__init__.py +0 -0
  49. yandex/cloud/smartwebsecurity/v1/security_profile_pb2.py +110 -0
  50. yandex/cloud/smartwebsecurity/v1/security_profile_pb2.pyi +520 -0
  51. yandex/cloud/smartwebsecurity/v1/security_profile_pb2_grpc.py +4 -0
  52. yandex/cloud/smartwebsecurity/v1/security_profile_pb2_grpc.pyi +17 -0
  53. yandex/cloud/smartwebsecurity/v1/security_profile_service_pb2.py +78 -0
  54. yandex/cloud/smartwebsecurity/v1/security_profile_service_pb2.pyi +260 -0
  55. yandex/cloud/smartwebsecurity/v1/security_profile_service_pb2_grpc.py +208 -0
  56. yandex/cloud/smartwebsecurity/v1/security_profile_service_pb2_grpc.pyi +132 -0
  57. yandex/cloud/speechsense/v1/analysis/__init__.py +0 -0
  58. yandex/cloud/speechsense/v1/analysis/conversation_statistics_pb2.py +28 -0
  59. yandex/cloud/speechsense/v1/analysis/conversation_statistics_pb2.pyi +40 -0
  60. yandex/cloud/speechsense/v1/analysis/conversation_statistics_pb2_grpc.py +4 -0
  61. yandex/cloud/speechsense/v1/analysis/conversation_statistics_pb2_grpc.pyi +17 -0
  62. yandex/cloud/speechsense/v1/analysis/interrupts_statistics_pb2.py +29 -0
  63. yandex/cloud/speechsense/v1/analysis/interrupts_statistics_pb2.pyi +66 -0
  64. yandex/cloud/speechsense/v1/analysis/interrupts_statistics_pb2_grpc.py +4 -0
  65. yandex/cloud/speechsense/v1/analysis/interrupts_statistics_pb2_grpc.pyi +17 -0
  66. yandex/cloud/speechsense/v1/analysis/points_pb2.py +29 -0
  67. yandex/cloud/speechsense/v1/analysis/points_pb2.pyi +53 -0
  68. yandex/cloud/speechsense/v1/analysis/points_pb2_grpc.py +4 -0
  69. yandex/cloud/speechsense/v1/analysis/points_pb2_grpc.pyi +17 -0
  70. yandex/cloud/speechsense/v1/analysis/predefined_classifiers_pb2.py +30 -0
  71. yandex/cloud/speechsense/v1/analysis/predefined_classifiers_pb2.pyi +93 -0
  72. yandex/cloud/speechsense/v1/analysis/predefined_classifiers_pb2_grpc.py +4 -0
  73. yandex/cloud/speechsense/v1/analysis/predefined_classifiers_pb2_grpc.pyi +17 -0
  74. yandex/cloud/speechsense/v1/analysis/silence_statistics_pb2.py +27 -0
  75. yandex/cloud/speechsense/v1/analysis/silence_statistics_pb2.pyi +41 -0
  76. yandex/cloud/speechsense/v1/analysis/silence_statistics_pb2_grpc.py +4 -0
  77. yandex/cloud/speechsense/v1/analysis/silence_statistics_pb2_grpc.pyi +17 -0
  78. yandex/cloud/speechsense/v1/analysis/speaker_statistics_pb2.py +28 -0
  79. yandex/cloud/speechsense/v1/analysis/speaker_statistics_pb2.pyi +58 -0
  80. yandex/cloud/speechsense/v1/analysis/speaker_statistics_pb2_grpc.py +4 -0
  81. yandex/cloud/speechsense/v1/analysis/speaker_statistics_pb2_grpc.pyi +17 -0
  82. yandex/cloud/speechsense/v1/analysis/speech_statistics_pb2.py +27 -0
  83. yandex/cloud/speechsense/v1/analysis/speech_statistics_pb2.pyi +43 -0
  84. yandex/cloud/speechsense/v1/analysis/speech_statistics_pb2_grpc.py +4 -0
  85. yandex/cloud/speechsense/v1/analysis/speech_statistics_pb2_grpc.pyi +17 -0
  86. yandex/cloud/speechsense/v1/analysis/statistics_common_pb2.py +30 -0
  87. yandex/cloud/speechsense/v1/analysis/statistics_common_pb2.pyi +91 -0
  88. yandex/cloud/speechsense/v1/analysis/statistics_common_pb2_grpc.py +4 -0
  89. yandex/cloud/speechsense/v1/analysis/statistics_common_pb2_grpc.pyi +17 -0
  90. yandex/cloud/speechsense/v1/analysis/text_classifiers_pb2.py +33 -0
  91. yandex/cloud/speechsense/v1/analysis/text_classifiers_pb2.pyi +102 -0
  92. yandex/cloud/speechsense/v1/analysis/text_classifiers_pb2_grpc.py +4 -0
  93. yandex/cloud/speechsense/v1/analysis/text_classifiers_pb2_grpc.pyi +17 -0
  94. yandex/cloud/speechsense/v1/analysis/transcription_pb2.py +41 -0
  95. yandex/cloud/speechsense/v1/analysis/transcription_pb2.pyi +186 -0
  96. yandex/cloud/speechsense/v1/analysis/transcription_pb2_grpc.py +4 -0
  97. yandex/cloud/speechsense/v1/analysis/transcription_pb2_grpc.pyi +17 -0
  98. yandex/cloud/speechsense/v1/analysis/utterance_statistics_pb2.py +27 -0
  99. yandex/cloud/speechsense/v1/analysis/utterance_statistics_pb2.pyi +70 -0
  100. yandex/cloud/speechsense/v1/analysis/utterance_statistics_pb2_grpc.py +4 -0
  101. yandex/cloud/speechsense/v1/analysis/utterance_statistics_pb2_grpc.pyi +17 -0
  102. yandex/cloud/speechsense/v1/search_pb2.py +51 -0
  103. yandex/cloud/speechsense/v1/search_pb2.pyi +324 -0
  104. yandex/cloud/speechsense/v1/search_pb2_grpc.py +4 -0
  105. yandex/cloud/speechsense/v1/search_pb2_grpc.pyi +17 -0
  106. yandex/cloud/speechsense/v1/talk_pb2.py +38 -0
  107. yandex/cloud/speechsense/v1/talk_pb2.pyi +161 -0
  108. yandex/cloud/speechsense/v1/talk_pb2_grpc.py +4 -0
  109. yandex/cloud/speechsense/v1/talk_pb2_grpc.pyi +17 -0
  110. yandex/cloud/speechsense/v1/talk_service_pb2.py +34 -18
  111. yandex/cloud/speechsense/v1/talk_service_pb2.pyi +143 -0
  112. yandex/cloud/speechsense/v1/talk_service_pb2_grpc.py +68 -0
  113. yandex/cloud/speechsense/v1/talk_service_pb2_grpc.pyi +40 -0
  114. {yandexcloud-0.294.0.dist-info → yandexcloud-0.296.0.dist-info}/METADATA +8 -8
  115. {yandexcloud-0.294.0.dist-info → yandexcloud-0.296.0.dist-info}/RECORD +119 -46
  116. {yandexcloud-0.294.0.dist-info → yandexcloud-0.296.0.dist-info}/AUTHORS +0 -0
  117. {yandexcloud-0.294.0.dist-info → yandexcloud-0.296.0.dist-info}/LICENSE +0 -0
  118. {yandexcloud-0.294.0.dist-info → yandexcloud-0.296.0.dist-info}/WHEEL +0 -0
  119. {yandexcloud-0.294.0.dist-info → yandexcloud-0.296.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,520 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+
6
+ import builtins
7
+ import collections.abc
8
+ import google.protobuf.descriptor
9
+ import google.protobuf.internal.containers
10
+ import google.protobuf.internal.enum_type_wrapper
11
+ import google.protobuf.message
12
+ import google.protobuf.timestamp_pb2
13
+ import sys
14
+ import typing
15
+
16
+ if sys.version_info >= (3, 10):
17
+ import typing as typing_extensions
18
+ else:
19
+ import typing_extensions
20
+
21
+ DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
22
+
23
+ @typing.final
24
+ class SecurityProfile(google.protobuf.message.Message):
25
+ """A SecurityProfile resource."""
26
+
27
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
28
+
29
+ class _DefaultAction:
30
+ ValueType = typing.NewType("ValueType", builtins.int)
31
+ V: typing_extensions.TypeAlias = ValueType
32
+
33
+ class _DefaultActionEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[SecurityProfile._DefaultAction.ValueType], builtins.type):
34
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
35
+ DEFAULT_ACTION_UNSPECIFIED: SecurityProfile._DefaultAction.ValueType # 0
36
+ ALLOW: SecurityProfile._DefaultAction.ValueType # 1
37
+ """Pass request to service."""
38
+ DENY: SecurityProfile._DefaultAction.ValueType # 2
39
+ """Deny request."""
40
+
41
+ class DefaultAction(_DefaultAction, metaclass=_DefaultActionEnumTypeWrapper):
42
+ """Action to perform if none of rules matched."""
43
+
44
+ DEFAULT_ACTION_UNSPECIFIED: SecurityProfile.DefaultAction.ValueType # 0
45
+ ALLOW: SecurityProfile.DefaultAction.ValueType # 1
46
+ """Pass request to service."""
47
+ DENY: SecurityProfile.DefaultAction.ValueType # 2
48
+ """Deny request."""
49
+
50
+ @typing.final
51
+ class LabelsEntry(google.protobuf.message.Message):
52
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
53
+
54
+ KEY_FIELD_NUMBER: builtins.int
55
+ VALUE_FIELD_NUMBER: builtins.int
56
+ key: builtins.str
57
+ value: builtins.str
58
+ def __init__(
59
+ self,
60
+ *,
61
+ key: builtins.str = ...,
62
+ value: builtins.str = ...,
63
+ ) -> None: ...
64
+ def ClearField(self, field_name: typing.Literal["key", b"key", "value", b"value"]) -> None: ...
65
+
66
+ ID_FIELD_NUMBER: builtins.int
67
+ FOLDER_ID_FIELD_NUMBER: builtins.int
68
+ CLOUD_ID_FIELD_NUMBER: builtins.int
69
+ LABELS_FIELD_NUMBER: builtins.int
70
+ NAME_FIELD_NUMBER: builtins.int
71
+ DESCRIPTION_FIELD_NUMBER: builtins.int
72
+ DEFAULT_ACTION_FIELD_NUMBER: builtins.int
73
+ SECURITY_RULES_FIELD_NUMBER: builtins.int
74
+ CREATED_AT_FIELD_NUMBER: builtins.int
75
+ CAPTCHA_ID_FIELD_NUMBER: builtins.int
76
+ id: builtins.str
77
+ """ID of the security profile."""
78
+ folder_id: builtins.str
79
+ """ID of the folder that the security profile belongs to."""
80
+ cloud_id: builtins.str
81
+ """ID of the cloud that the security profile belongs to."""
82
+ name: builtins.str
83
+ """Name of the security profile. The name is unique within the folder. 1-50 characters long."""
84
+ description: builtins.str
85
+ """Optional description of the security profile."""
86
+ default_action: global___SecurityProfile.DefaultAction.ValueType
87
+ """Action to perform if none of rules matched."""
88
+ captcha_id: builtins.str
89
+ """Captcha ID to use with this security profile. Set empty to use default."""
90
+ @property
91
+ def labels(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]:
92
+ """Labels as `` key:value `` pairs. Maximum of 64 per resource."""
93
+
94
+ @property
95
+ def security_rules(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SecurityRule]:
96
+ """List of security rules."""
97
+
98
+ @property
99
+ def created_at(self) -> google.protobuf.timestamp_pb2.Timestamp:
100
+ """Creation timestamp in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format."""
101
+
102
+ def __init__(
103
+ self,
104
+ *,
105
+ id: builtins.str = ...,
106
+ folder_id: builtins.str = ...,
107
+ cloud_id: builtins.str = ...,
108
+ labels: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
109
+ name: builtins.str = ...,
110
+ description: builtins.str = ...,
111
+ default_action: global___SecurityProfile.DefaultAction.ValueType = ...,
112
+ security_rules: collections.abc.Iterable[global___SecurityRule] | None = ...,
113
+ created_at: google.protobuf.timestamp_pb2.Timestamp | None = ...,
114
+ captcha_id: builtins.str = ...,
115
+ ) -> None: ...
116
+ def HasField(self, field_name: typing.Literal["created_at", b"created_at"]) -> builtins.bool: ...
117
+ def ClearField(self, field_name: typing.Literal["captcha_id", b"captcha_id", "cloud_id", b"cloud_id", "created_at", b"created_at", "default_action", b"default_action", "description", b"description", "folder_id", b"folder_id", "id", b"id", "labels", b"labels", "name", b"name", "security_rules", b"security_rules"]) -> None: ...
118
+
119
+ global___SecurityProfile = SecurityProfile
120
+
121
+ @typing.final
122
+ class SecurityRule(google.protobuf.message.Message):
123
+ """A SecurityRule object, see [Rules](/docs/smartwebsecurity/concepts/rules)."""
124
+
125
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
126
+
127
+ @typing.final
128
+ class RuleCondition(google.protobuf.message.Message):
129
+ """RuleCondition object."""
130
+
131
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
132
+
133
+ class _Action:
134
+ ValueType = typing.NewType("ValueType", builtins.int)
135
+ V: typing_extensions.TypeAlias = ValueType
136
+
137
+ class _ActionEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[SecurityRule.RuleCondition._Action.ValueType], builtins.type):
138
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
139
+ ACTION_UNSPECIFIED: SecurityRule.RuleCondition._Action.ValueType # 0
140
+ ALLOW: SecurityRule.RuleCondition._Action.ValueType # 1
141
+ """Pass request to service."""
142
+ DENY: SecurityRule.RuleCondition._Action.ValueType # 2
143
+ """Deny request."""
144
+
145
+ class Action(_Action, metaclass=_ActionEnumTypeWrapper):
146
+ """Type of action to perform if this rule matched."""
147
+
148
+ ACTION_UNSPECIFIED: SecurityRule.RuleCondition.Action.ValueType # 0
149
+ ALLOW: SecurityRule.RuleCondition.Action.ValueType # 1
150
+ """Pass request to service."""
151
+ DENY: SecurityRule.RuleCondition.Action.ValueType # 2
152
+ """Deny request."""
153
+
154
+ ACTION_FIELD_NUMBER: builtins.int
155
+ CONDITION_FIELD_NUMBER: builtins.int
156
+ action: global___SecurityRule.RuleCondition.Action.ValueType
157
+ """Action to perform if this rule matched."""
158
+ @property
159
+ def condition(self) -> global___Condition:
160
+ """The condition for matching the rule."""
161
+
162
+ def __init__(
163
+ self,
164
+ *,
165
+ action: global___SecurityRule.RuleCondition.Action.ValueType = ...,
166
+ condition: global___Condition | None = ...,
167
+ ) -> None: ...
168
+ def HasField(self, field_name: typing.Literal["condition", b"condition"]) -> builtins.bool: ...
169
+ def ClearField(self, field_name: typing.Literal["action", b"action", "condition", b"condition"]) -> None: ...
170
+
171
+ @typing.final
172
+ class SmartProtection(google.protobuf.message.Message):
173
+ """SmartProtection object."""
174
+
175
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
176
+
177
+ class _Mode:
178
+ ValueType = typing.NewType("ValueType", builtins.int)
179
+ V: typing_extensions.TypeAlias = ValueType
180
+
181
+ class _ModeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTypeWrapper[SecurityRule.SmartProtection._Mode.ValueType], builtins.type):
182
+ DESCRIPTOR: google.protobuf.descriptor.EnumDescriptor
183
+ MODE_UNSPECIFIED: SecurityRule.SmartProtection._Mode.ValueType # 0
184
+ FULL: SecurityRule.SmartProtection._Mode.ValueType # 1
185
+ """Full protection means that the traffic will be checked based on ML models and behavioral analysis,
186
+ with suspicious requests being sent to SmartCaptcha.
187
+ """
188
+ API: SecurityRule.SmartProtection._Mode.ValueType # 2
189
+ """API protection means checking the traffic based on ML models and behavioral analysis without sending suspicious
190
+ requests to SmartCaptcha. The suspicious requests will be blocked.
191
+ """
192
+
193
+ class Mode(_Mode, metaclass=_ModeEnumTypeWrapper):
194
+ """Mode of protection."""
195
+
196
+ MODE_UNSPECIFIED: SecurityRule.SmartProtection.Mode.ValueType # 0
197
+ FULL: SecurityRule.SmartProtection.Mode.ValueType # 1
198
+ """Full protection means that the traffic will be checked based on ML models and behavioral analysis,
199
+ with suspicious requests being sent to SmartCaptcha.
200
+ """
201
+ API: SecurityRule.SmartProtection.Mode.ValueType # 2
202
+ """API protection means checking the traffic based on ML models and behavioral analysis without sending suspicious
203
+ requests to SmartCaptcha. The suspicious requests will be blocked.
204
+ """
205
+
206
+ MODE_FIELD_NUMBER: builtins.int
207
+ CONDITION_FIELD_NUMBER: builtins.int
208
+ mode: global___SecurityRule.SmartProtection.Mode.ValueType
209
+ """Mode of protection."""
210
+ @property
211
+ def condition(self) -> global___Condition:
212
+ """The condition for matching the rule."""
213
+
214
+ def __init__(
215
+ self,
216
+ *,
217
+ mode: global___SecurityRule.SmartProtection.Mode.ValueType = ...,
218
+ condition: global___Condition | None = ...,
219
+ ) -> None: ...
220
+ def HasField(self, field_name: typing.Literal["condition", b"condition"]) -> builtins.bool: ...
221
+ def ClearField(self, field_name: typing.Literal["condition", b"condition", "mode", b"mode"]) -> None: ...
222
+
223
+ NAME_FIELD_NUMBER: builtins.int
224
+ PRIORITY_FIELD_NUMBER: builtins.int
225
+ DRY_RUN_FIELD_NUMBER: builtins.int
226
+ RULE_CONDITION_FIELD_NUMBER: builtins.int
227
+ SMART_PROTECTION_FIELD_NUMBER: builtins.int
228
+ DESCRIPTION_FIELD_NUMBER: builtins.int
229
+ name: builtins.str
230
+ """Name of the rule. The name is unique within the folder. 1-50 characters long."""
231
+ priority: builtins.int
232
+ """Determines the priority for checking the incoming traffic.
233
+ Enter an integer within the range of 1 and 999999.
234
+ The rule priority must be unique within the entire security profile.
235
+ A lower numeric value means a higher priority.
236
+ The default_action has the lowest priority.
237
+ """
238
+ dry_run: builtins.bool
239
+ """This mode allows you to test your security profile or a single rule.
240
+ For example, you can have the number of alarms for a specific rule displayed.
241
+ Note: if this option is true, no real action affecting your traffic regarding this rule will be taken.
242
+ """
243
+ description: builtins.str
244
+ """Optional description of the rule. 0-512 characters long."""
245
+ @property
246
+ def rule_condition(self) -> global___SecurityRule.RuleCondition:
247
+ """Rule actions, see [Rule actions](/docs/smartwebsecurity/concepts/rules#rule-action)."""
248
+
249
+ @property
250
+ def smart_protection(self) -> global___SecurityRule.SmartProtection:
251
+ """Smart Protection rule, see [Smart Protection rules](/docs/smartwebsecurity/concepts/rules#smart-protection-rules)."""
252
+
253
+ def __init__(
254
+ self,
255
+ *,
256
+ name: builtins.str = ...,
257
+ priority: builtins.int = ...,
258
+ dry_run: builtins.bool = ...,
259
+ rule_condition: global___SecurityRule.RuleCondition | None = ...,
260
+ smart_protection: global___SecurityRule.SmartProtection | None = ...,
261
+ description: builtins.str = ...,
262
+ ) -> None: ...
263
+ def HasField(self, field_name: typing.Literal["rule_condition", b"rule_condition", "rule_specifier", b"rule_specifier", "smart_protection", b"smart_protection"]) -> builtins.bool: ...
264
+ def ClearField(self, field_name: typing.Literal["description", b"description", "dry_run", b"dry_run", "name", b"name", "priority", b"priority", "rule_condition", b"rule_condition", "rule_specifier", b"rule_specifier", "smart_protection", b"smart_protection"]) -> None: ...
265
+ def WhichOneof(self, oneof_group: typing.Literal["rule_specifier", b"rule_specifier"]) -> typing.Literal["rule_condition", "smart_protection"] | None: ...
266
+
267
+ global___SecurityRule = SecurityRule
268
+
269
+ @typing.final
270
+ class Condition(google.protobuf.message.Message):
271
+ """Condition object. AND semantics implied.
272
+ See [documentation](/docs/smartwebsecurity/concepts/conditions) for matchers description.
273
+ """
274
+
275
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
276
+
277
+ @typing.final
278
+ class StringMatcher(google.protobuf.message.Message):
279
+ """StringMatcher object."""
280
+
281
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
282
+
283
+ EXACT_MATCH_FIELD_NUMBER: builtins.int
284
+ EXACT_NOT_MATCH_FIELD_NUMBER: builtins.int
285
+ PREFIX_MATCH_FIELD_NUMBER: builtins.int
286
+ PREFIX_NOT_MATCH_FIELD_NUMBER: builtins.int
287
+ PIRE_REGEX_MATCH_FIELD_NUMBER: builtins.int
288
+ PIRE_REGEX_NOT_MATCH_FIELD_NUMBER: builtins.int
289
+ exact_match: builtins.str
290
+ exact_not_match: builtins.str
291
+ prefix_match: builtins.str
292
+ prefix_not_match: builtins.str
293
+ pire_regex_match: builtins.str
294
+ pire_regex_not_match: builtins.str
295
+ def __init__(
296
+ self,
297
+ *,
298
+ exact_match: builtins.str = ...,
299
+ exact_not_match: builtins.str = ...,
300
+ prefix_match: builtins.str = ...,
301
+ prefix_not_match: builtins.str = ...,
302
+ pire_regex_match: builtins.str = ...,
303
+ pire_regex_not_match: builtins.str = ...,
304
+ ) -> None: ...
305
+ def HasField(self, field_name: typing.Literal["exact_match", b"exact_match", "exact_not_match", b"exact_not_match", "match", b"match", "pire_regex_match", b"pire_regex_match", "pire_regex_not_match", b"pire_regex_not_match", "prefix_match", b"prefix_match", "prefix_not_match", b"prefix_not_match"]) -> builtins.bool: ...
306
+ def ClearField(self, field_name: typing.Literal["exact_match", b"exact_match", "exact_not_match", b"exact_not_match", "match", b"match", "pire_regex_match", b"pire_regex_match", "pire_regex_not_match", b"pire_regex_not_match", "prefix_match", b"prefix_match", "prefix_not_match", b"prefix_not_match"]) -> None: ...
307
+ def WhichOneof(self, oneof_group: typing.Literal["match", b"match"]) -> typing.Literal["exact_match", "exact_not_match", "prefix_match", "prefix_not_match", "pire_regex_match", "pire_regex_not_match"] | None: ...
308
+
309
+ @typing.final
310
+ class HttpMethodMatcher(google.protobuf.message.Message):
311
+ """HttpMethodMatcher object."""
312
+
313
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
314
+
315
+ HTTP_METHODS_FIELD_NUMBER: builtins.int
316
+ @property
317
+ def http_methods(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Condition.StringMatcher]:
318
+ """List of HTTP methods. OR semantics implied."""
319
+
320
+ def __init__(
321
+ self,
322
+ *,
323
+ http_methods: collections.abc.Iterable[global___Condition.StringMatcher] | None = ...,
324
+ ) -> None: ...
325
+ def ClearField(self, field_name: typing.Literal["http_methods", b"http_methods"]) -> None: ...
326
+
327
+ @typing.final
328
+ class AuthorityMatcher(google.protobuf.message.Message):
329
+ """AuthorityMatcher object."""
330
+
331
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
332
+
333
+ AUTHORITIES_FIELD_NUMBER: builtins.int
334
+ @property
335
+ def authorities(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Condition.StringMatcher]:
336
+ """List of authorities. OR semantics implied."""
337
+
338
+ def __init__(
339
+ self,
340
+ *,
341
+ authorities: collections.abc.Iterable[global___Condition.StringMatcher] | None = ...,
342
+ ) -> None: ...
343
+ def ClearField(self, field_name: typing.Literal["authorities", b"authorities"]) -> None: ...
344
+
345
+ @typing.final
346
+ class RequestUriMatcher(google.protobuf.message.Message):
347
+ """RequestUriMatcher object. AND semantics implied."""
348
+
349
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
350
+
351
+ PATH_FIELD_NUMBER: builtins.int
352
+ QUERIES_FIELD_NUMBER: builtins.int
353
+ @property
354
+ def path(self) -> global___Condition.StringMatcher:
355
+ """Path of the URI [RFC3986](https://datatracker.ietf.org/doc/html/rfc3986#section-3.3)."""
356
+
357
+ @property
358
+ def queries(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Condition.QueryMatcher]:
359
+ """List of query matchers. AND semantics implied."""
360
+
361
+ def __init__(
362
+ self,
363
+ *,
364
+ path: global___Condition.StringMatcher | None = ...,
365
+ queries: collections.abc.Iterable[global___Condition.QueryMatcher] | None = ...,
366
+ ) -> None: ...
367
+ def HasField(self, field_name: typing.Literal["path", b"path"]) -> builtins.bool: ...
368
+ def ClearField(self, field_name: typing.Literal["path", b"path", "queries", b"queries"]) -> None: ...
369
+
370
+ @typing.final
371
+ class QueryMatcher(google.protobuf.message.Message):
372
+ """QueryMatcher object."""
373
+
374
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
375
+
376
+ KEY_FIELD_NUMBER: builtins.int
377
+ VALUE_FIELD_NUMBER: builtins.int
378
+ key: builtins.str
379
+ """Key of the query parameter."""
380
+ @property
381
+ def value(self) -> global___Condition.StringMatcher:
382
+ """Value of the query parameter."""
383
+
384
+ def __init__(
385
+ self,
386
+ *,
387
+ key: builtins.str = ...,
388
+ value: global___Condition.StringMatcher | None = ...,
389
+ ) -> None: ...
390
+ def HasField(self, field_name: typing.Literal["value", b"value"]) -> builtins.bool: ...
391
+ def ClearField(self, field_name: typing.Literal["key", b"key", "value", b"value"]) -> None: ...
392
+
393
+ @typing.final
394
+ class HeaderMatcher(google.protobuf.message.Message):
395
+ """HeaderMatcher object."""
396
+
397
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
398
+
399
+ NAME_FIELD_NUMBER: builtins.int
400
+ VALUE_FIELD_NUMBER: builtins.int
401
+ name: builtins.str
402
+ """Name of header (case insensitive)."""
403
+ @property
404
+ def value(self) -> global___Condition.StringMatcher:
405
+ """Value of the header."""
406
+
407
+ def __init__(
408
+ self,
409
+ *,
410
+ name: builtins.str = ...,
411
+ value: global___Condition.StringMatcher | None = ...,
412
+ ) -> None: ...
413
+ def HasField(self, field_name: typing.Literal["value", b"value"]) -> builtins.bool: ...
414
+ def ClearField(self, field_name: typing.Literal["name", b"name", "value", b"value"]) -> None: ...
415
+
416
+ @typing.final
417
+ class IpMatcher(google.protobuf.message.Message):
418
+ """IpMatcher object. AND semantics implied."""
419
+
420
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
421
+
422
+ IP_RANGES_MATCH_FIELD_NUMBER: builtins.int
423
+ IP_RANGES_NOT_MATCH_FIELD_NUMBER: builtins.int
424
+ GEO_IP_MATCH_FIELD_NUMBER: builtins.int
425
+ GEO_IP_NOT_MATCH_FIELD_NUMBER: builtins.int
426
+ @property
427
+ def ip_ranges_match(self) -> global___Condition.IpRangesMatcher: ...
428
+ @property
429
+ def ip_ranges_not_match(self) -> global___Condition.IpRangesMatcher: ...
430
+ @property
431
+ def geo_ip_match(self) -> global___Condition.GeoIpMatcher: ...
432
+ @property
433
+ def geo_ip_not_match(self) -> global___Condition.GeoIpMatcher: ...
434
+ def __init__(
435
+ self,
436
+ *,
437
+ ip_ranges_match: global___Condition.IpRangesMatcher | None = ...,
438
+ ip_ranges_not_match: global___Condition.IpRangesMatcher | None = ...,
439
+ geo_ip_match: global___Condition.GeoIpMatcher | None = ...,
440
+ geo_ip_not_match: global___Condition.GeoIpMatcher | None = ...,
441
+ ) -> None: ...
442
+ def HasField(self, field_name: typing.Literal["geo_ip_match", b"geo_ip_match", "geo_ip_not_match", b"geo_ip_not_match", "ip_ranges_match", b"ip_ranges_match", "ip_ranges_not_match", b"ip_ranges_not_match"]) -> builtins.bool: ...
443
+ def ClearField(self, field_name: typing.Literal["geo_ip_match", b"geo_ip_match", "geo_ip_not_match", b"geo_ip_not_match", "ip_ranges_match", b"ip_ranges_match", "ip_ranges_not_match", b"ip_ranges_not_match"]) -> None: ...
444
+
445
+ @typing.final
446
+ class IpRangesMatcher(google.protobuf.message.Message):
447
+ """IpRangesMatcher object."""
448
+
449
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
450
+
451
+ IP_RANGES_FIELD_NUMBER: builtins.int
452
+ @property
453
+ def ip_ranges(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
454
+ """List of IP ranges. OR semantics implied.
455
+ v4/v6 - allow, exact IP == /32 or /128 range
456
+ """
457
+
458
+ def __init__(
459
+ self,
460
+ *,
461
+ ip_ranges: collections.abc.Iterable[builtins.str] | None = ...,
462
+ ) -> None: ...
463
+ def ClearField(self, field_name: typing.Literal["ip_ranges", b"ip_ranges"]) -> None: ...
464
+
465
+ @typing.final
466
+ class GeoIpMatcher(google.protobuf.message.Message):
467
+ """GeoIpMatcher object."""
468
+
469
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
470
+
471
+ LOCATIONS_FIELD_NUMBER: builtins.int
472
+ @property
473
+ def locations(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
474
+ """ISO 3166-1 alpha 2. OR semantics implied."""
475
+
476
+ def __init__(
477
+ self,
478
+ *,
479
+ locations: collections.abc.Iterable[builtins.str] | None = ...,
480
+ ) -> None: ...
481
+ def ClearField(self, field_name: typing.Literal["locations", b"locations"]) -> None: ...
482
+
483
+ AUTHORITY_FIELD_NUMBER: builtins.int
484
+ HTTP_METHOD_FIELD_NUMBER: builtins.int
485
+ REQUEST_URI_FIELD_NUMBER: builtins.int
486
+ HEADERS_FIELD_NUMBER: builtins.int
487
+ SOURCE_IP_FIELD_NUMBER: builtins.int
488
+ @property
489
+ def authority(self) -> global___Condition.AuthorityMatcher:
490
+ """Match authority (Host header)."""
491
+
492
+ @property
493
+ def http_method(self) -> global___Condition.HttpMethodMatcher:
494
+ """Match HTTP method."""
495
+
496
+ @property
497
+ def request_uri(self) -> global___Condition.RequestUriMatcher:
498
+ """Match Request URI."""
499
+
500
+ @property
501
+ def headers(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Condition.HeaderMatcher]:
502
+ """Match HTTP headers."""
503
+
504
+ @property
505
+ def source_ip(self) -> global___Condition.IpMatcher:
506
+ """Match IP."""
507
+
508
+ def __init__(
509
+ self,
510
+ *,
511
+ authority: global___Condition.AuthorityMatcher | None = ...,
512
+ http_method: global___Condition.HttpMethodMatcher | None = ...,
513
+ request_uri: global___Condition.RequestUriMatcher | None = ...,
514
+ headers: collections.abc.Iterable[global___Condition.HeaderMatcher] | None = ...,
515
+ source_ip: global___Condition.IpMatcher | None = ...,
516
+ ) -> None: ...
517
+ def HasField(self, field_name: typing.Literal["authority", b"authority", "http_method", b"http_method", "request_uri", b"request_uri", "source_ip", b"source_ip"]) -> builtins.bool: ...
518
+ def ClearField(self, field_name: typing.Literal["authority", b"authority", "headers", b"headers", "http_method", b"http_method", "request_uri", b"request_uri", "source_ip", b"source_ip"]) -> None: ...
519
+
520
+ global___Condition = Condition
@@ -0,0 +1,4 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+
@@ -0,0 +1,17 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+
6
+ import abc
7
+ import collections.abc
8
+ import grpc
9
+ import grpc.aio
10
+ import typing
11
+
12
+ _T = typing.TypeVar("_T")
13
+
14
+ class _MaybeAsyncIterator(collections.abc.AsyncIterator[_T], collections.abc.Iterator[_T], metaclass=abc.ABCMeta): ...
15
+
16
+ class _ServicerContext(grpc.ServicerContext, grpc.aio.ServicerContext): # type: ignore[misc, type-arg]
17
+ ...
@@ -0,0 +1,78 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: yandex/cloud/smartwebsecurity/v1/security_profile_service.proto
4
+ """Generated protocol buffer code."""
5
+ from google.protobuf import descriptor as _descriptor
6
+ from google.protobuf import descriptor_pool as _descriptor_pool
7
+ from google.protobuf import symbol_database as _symbol_database
8
+ from google.protobuf.internal import builder as _builder
9
+ # @@protoc_insertion_point(imports)
10
+
11
+ _sym_db = _symbol_database.Default()
12
+
13
+
14
+ from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2
15
+ from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2
16
+ from yandex.cloud.api import operation_pb2 as yandex_dot_cloud_dot_api_dot_operation__pb2
17
+ from yandex.cloud import validation_pb2 as yandex_dot_cloud_dot_validation__pb2
18
+ from yandex.cloud.operation import operation_pb2 as yandex_dot_cloud_dot_operation_dot_operation__pb2
19
+ from yandex.cloud.smartwebsecurity.v1 import security_profile_pb2 as yandex_dot_cloud_dot_smartwebsecurity_dot_v1_dot_security__profile__pb2
20
+
21
+
22
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n?yandex/cloud/smartwebsecurity/v1/security_profile_service.proto\x12 yandex.cloud.smartwebsecurity.v1\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\x1a yandex/cloud/api/operation.proto\x1a\x1dyandex/cloud/validation.proto\x1a&yandex/cloud/operation/operation.proto\x1a\x37yandex/cloud/smartwebsecurity/v1/security_profile.proto\">\n\x19GetSecurityProfileRequest\x12!\n\x13security_profile_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\"6\n\x1bListSecurityProfilesRequest\x12\x17\n\tfolder_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\"l\n\x1cListSecurityProfilesResponse\x12L\n\x11security_profiles\x18\x01 \x03(\x0b\x32\x31.yandex.cloud.smartwebsecurity.v1.SecurityProfile\"\x9a\x03\n\x1c\x43reateSecurityProfileRequest\x12\x17\n\tfolder_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12Z\n\x06labels\x18\x02 \x03(\x0b\x32J.yandex.cloud.smartwebsecurity.v1.CreateSecurityProfileRequest.LabelsEntry\x12\x0c\n\x04name\x18\x03 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\x12W\n\x0e\x64\x65\x66\x61ult_action\x18\x05 \x01(\x0e\x32?.yandex.cloud.smartwebsecurity.v1.SecurityProfile.DefaultAction\x12\x46\n\x0esecurity_rules\x18\x06 \x03(\x0b\x32..yandex.cloud.smartwebsecurity.v1.SecurityRule\x12\x12\n\ncaptcha_id\x18\x07 \x01(\t\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"<\n\x1d\x43reateSecurityProfileMetadata\x12\x1b\n\x13security_profile_id\x18\x01 \x01(\t\"\xd5\x03\n\x1cUpdateSecurityProfileRequest\x12!\n\x13security_profile_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12Z\n\x06labels\x18\x03 \x03(\x0b\x32J.yandex.cloud.smartwebsecurity.v1.UpdateSecurityProfileRequest.LabelsEntry\x12\x0c\n\x04name\x18\x04 \x01(\t\x12\x13\n\x0b\x64\x65scription\x18\x05 \x01(\t\x12W\n\x0e\x64\x65\x66\x61ult_action\x18\x06 \x01(\x0e\x32?.yandex.cloud.smartwebsecurity.v1.SecurityProfile.DefaultAction\x12\x46\n\x0esecurity_rules\x18\x07 \x03(\x0b\x32..yandex.cloud.smartwebsecurity.v1.SecurityRule\x12\x12\n\ncaptcha_id\x18\x08 \x01(\t\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"<\n\x1dUpdateSecurityProfileMetadata\x12\x1b\n\x13security_profile_id\x18\x01 \x01(\t\"A\n\x1c\x44\x65leteSecurityProfileRequest\x12!\n\x13security_profile_id\x18\x01 \x01(\tB\x04\xe8\xc7\x31\x01\"<\n\x1d\x44\x65leteSecurityProfileMetadata\x12\x1b\n\x13security_profile_id\x18\x01 \x01(\t2\xb7\x08\n\x16SecurityProfileService\x12\xba\x01\n\x03Get\x12;.yandex.cloud.smartwebsecurity.v1.GetSecurityProfileRequest\x1a\x31.yandex.cloud.smartwebsecurity.v1.SecurityProfile\"C\x82\xd3\xe4\x93\x02=\x12;/smartwebsecurity/v1/securityProfiles/{security_profile_id}\x12\xb4\x01\n\x04List\x12=.yandex.cloud.smartwebsecurity.v1.ListSecurityProfilesRequest\x1a>.yandex.cloud.smartwebsecurity.v1.ListSecurityProfilesResponse\"-\x82\xd3\xe4\x93\x02\'\x12%/smartwebsecurity/v1/securityProfiles\x12\xd1\x01\n\x06\x43reate\x12>.yandex.cloud.smartwebsecurity.v1.CreateSecurityProfileRequest\x1a!.yandex.cloud.operation.Operation\"d\xb2\xd2*0\n\x1d\x43reateSecurityProfileMetadata\x12\x0fSecurityProfile\x82\xd3\xe4\x93\x02*\"%/smartwebsecurity/v1/securityProfiles:\x01*\x12\xe7\x01\n\x06Update\x12>.yandex.cloud.smartwebsecurity.v1.UpdateSecurityProfileRequest\x1a!.yandex.cloud.operation.Operation\"z\xb2\xd2*0\n\x1dUpdateSecurityProfileMetadata\x12\x0fSecurityProfile\x82\xd3\xe4\x93\x02@2;/smartwebsecurity/v1/securityProfiles/{security_profile_id}:\x01*\x12\xea\x01\n\x06\x44\x65lete\x12>.yandex.cloud.smartwebsecurity.v1.DeleteSecurityProfileRequest\x1a!.yandex.cloud.operation.Operation\"}\xb2\xd2*6\n\x1d\x44\x65leteSecurityProfileMetadata\x12\x15google.protobuf.Empty\x82\xd3\xe4\x93\x02=*;/smartwebsecurity/v1/securityProfiles/{security_profile_id}B}\n$yandex.cloud.api.smartwebsecurity.v1ZUgithub.com/yandex-cloud/go-genproto/yandex/cloud/smartwebsecurity/v1;smartwebsecurityb\x06proto3')
23
+
24
+ _globals = globals()
25
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
26
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'yandex.cloud.smartwebsecurity.v1.security_profile_service_pb2', _globals)
27
+ if _descriptor._USE_C_DESCRIPTORS == False:
28
+ DESCRIPTOR._options = None
29
+ DESCRIPTOR._serialized_options = b'\n$yandex.cloud.api.smartwebsecurity.v1ZUgithub.com/yandex-cloud/go-genproto/yandex/cloud/smartwebsecurity/v1;smartwebsecurity'
30
+ _GETSECURITYPROFILEREQUEST.fields_by_name['security_profile_id']._options = None
31
+ _GETSECURITYPROFILEREQUEST.fields_by_name['security_profile_id']._serialized_options = b'\350\3071\001'
32
+ _LISTSECURITYPROFILESREQUEST.fields_by_name['folder_id']._options = None
33
+ _LISTSECURITYPROFILESREQUEST.fields_by_name['folder_id']._serialized_options = b'\350\3071\001'
34
+ _CREATESECURITYPROFILEREQUEST_LABELSENTRY._options = None
35
+ _CREATESECURITYPROFILEREQUEST_LABELSENTRY._serialized_options = b'8\001'
36
+ _CREATESECURITYPROFILEREQUEST.fields_by_name['folder_id']._options = None
37
+ _CREATESECURITYPROFILEREQUEST.fields_by_name['folder_id']._serialized_options = b'\350\3071\001'
38
+ _UPDATESECURITYPROFILEREQUEST_LABELSENTRY._options = None
39
+ _UPDATESECURITYPROFILEREQUEST_LABELSENTRY._serialized_options = b'8\001'
40
+ _UPDATESECURITYPROFILEREQUEST.fields_by_name['security_profile_id']._options = None
41
+ _UPDATESECURITYPROFILEREQUEST.fields_by_name['security_profile_id']._serialized_options = b'\350\3071\001'
42
+ _DELETESECURITYPROFILEREQUEST.fields_by_name['security_profile_id']._options = None
43
+ _DELETESECURITYPROFILEREQUEST.fields_by_name['security_profile_id']._serialized_options = b'\350\3071\001'
44
+ _SECURITYPROFILESERVICE.methods_by_name['Get']._options = None
45
+ _SECURITYPROFILESERVICE.methods_by_name['Get']._serialized_options = b'\202\323\344\223\002=\022;/smartwebsecurity/v1/securityProfiles/{security_profile_id}'
46
+ _SECURITYPROFILESERVICE.methods_by_name['List']._options = None
47
+ _SECURITYPROFILESERVICE.methods_by_name['List']._serialized_options = b'\202\323\344\223\002\'\022%/smartwebsecurity/v1/securityProfiles'
48
+ _SECURITYPROFILESERVICE.methods_by_name['Create']._options = None
49
+ _SECURITYPROFILESERVICE.methods_by_name['Create']._serialized_options = b'\262\322*0\n\035CreateSecurityProfileMetadata\022\017SecurityProfile\202\323\344\223\002*\"%/smartwebsecurity/v1/securityProfiles:\001*'
50
+ _SECURITYPROFILESERVICE.methods_by_name['Update']._options = None
51
+ _SECURITYPROFILESERVICE.methods_by_name['Update']._serialized_options = b'\262\322*0\n\035UpdateSecurityProfileMetadata\022\017SecurityProfile\202\323\344\223\002@2;/smartwebsecurity/v1/securityProfiles/{security_profile_id}:\001*'
52
+ _SECURITYPROFILESERVICE.methods_by_name['Delete']._options = None
53
+ _SECURITYPROFILESERVICE.methods_by_name['Delete']._serialized_options = b'\262\322*6\n\035DeleteSecurityProfileMetadata\022\025google.protobuf.Empty\202\323\344\223\002=*;/smartwebsecurity/v1/securityProfiles/{security_profile_id}'
54
+ _globals['_GETSECURITYPROFILEREQUEST']._serialized_start=327
55
+ _globals['_GETSECURITYPROFILEREQUEST']._serialized_end=389
56
+ _globals['_LISTSECURITYPROFILESREQUEST']._serialized_start=391
57
+ _globals['_LISTSECURITYPROFILESREQUEST']._serialized_end=445
58
+ _globals['_LISTSECURITYPROFILESRESPONSE']._serialized_start=447
59
+ _globals['_LISTSECURITYPROFILESRESPONSE']._serialized_end=555
60
+ _globals['_CREATESECURITYPROFILEREQUEST']._serialized_start=558
61
+ _globals['_CREATESECURITYPROFILEREQUEST']._serialized_end=968
62
+ _globals['_CREATESECURITYPROFILEREQUEST_LABELSENTRY']._serialized_start=923
63
+ _globals['_CREATESECURITYPROFILEREQUEST_LABELSENTRY']._serialized_end=968
64
+ _globals['_CREATESECURITYPROFILEMETADATA']._serialized_start=970
65
+ _globals['_CREATESECURITYPROFILEMETADATA']._serialized_end=1030
66
+ _globals['_UPDATESECURITYPROFILEREQUEST']._serialized_start=1033
67
+ _globals['_UPDATESECURITYPROFILEREQUEST']._serialized_end=1502
68
+ _globals['_UPDATESECURITYPROFILEREQUEST_LABELSENTRY']._serialized_start=923
69
+ _globals['_UPDATESECURITYPROFILEREQUEST_LABELSENTRY']._serialized_end=968
70
+ _globals['_UPDATESECURITYPROFILEMETADATA']._serialized_start=1504
71
+ _globals['_UPDATESECURITYPROFILEMETADATA']._serialized_end=1564
72
+ _globals['_DELETESECURITYPROFILEREQUEST']._serialized_start=1566
73
+ _globals['_DELETESECURITYPROFILEREQUEST']._serialized_end=1631
74
+ _globals['_DELETESECURITYPROFILEMETADATA']._serialized_start=1633
75
+ _globals['_DELETESECURITYPROFILEMETADATA']._serialized_end=1693
76
+ _globals['_SECURITYPROFILESERVICE']._serialized_start=1696
77
+ _globals['_SECURITYPROFILESERVICE']._serialized_end=2775
78
+ # @@protoc_insertion_point(module_scope)