tencentcloud-sdk-python-intl-en 3.0.1089__py2.py3-none-any.whl → 3.0.1090__py2.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 tencentcloud-sdk-python-intl-en might be problematic. Click here for more details.

@@ -0,0 +1,2362 @@
1
+ # -*- coding: utf8 -*-
2
+ # Copyright (c) 2017-2021 THL A29 Limited, a Tencent company. All Rights Reserved.
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
+ import warnings
17
+
18
+ from tencentcloud.common.abstract_model import AbstractModel
19
+
20
+
21
+ class Annotation(AbstractModel):
22
+ """Compliance details
23
+
24
+ """
25
+
26
+ def __init__(self):
27
+ r"""
28
+ :param _Configuration: Current actual configuration of the resource. It can contain 0 to 256 characters, which is the non-compliant configuration of the resource.
29
+ Note: This field may return null, indicating that no valid value is found.
30
+ :type Configuration: str
31
+ :param _DesiredValue: Desired configuration of the resource. It can contain 0 to 256 characters, which is the compliant configuration of the resource.
32
+ Note: This field may return null, indicating that no valid value is found.
33
+ :type DesiredValue: str
34
+ :param _Operator: Comparison operator between current and desired configuration of the resource. Length is 0-16 characters. This field may be empty when custom rule reporting evaluation result.
35
+ :type Operator: str
36
+ :param _Property: JSON path of current configuration in resource attribute structure. Length is 0-256 characters. This field may be empty when custom rule reporting evaluation result.
37
+ :type Property: str
38
+ """
39
+ self._Configuration = None
40
+ self._DesiredValue = None
41
+ self._Operator = None
42
+ self._Property = None
43
+
44
+ @property
45
+ def Configuration(self):
46
+ """Current actual configuration of the resource. It can contain 0 to 256 characters, which is the non-compliant configuration of the resource.
47
+ Note: This field may return null, indicating that no valid value is found.
48
+ :rtype: str
49
+ """
50
+ return self._Configuration
51
+
52
+ @Configuration.setter
53
+ def Configuration(self, Configuration):
54
+ self._Configuration = Configuration
55
+
56
+ @property
57
+ def DesiredValue(self):
58
+ """Desired configuration of the resource. It can contain 0 to 256 characters, which is the compliant configuration of the resource.
59
+ Note: This field may return null, indicating that no valid value is found.
60
+ :rtype: str
61
+ """
62
+ return self._DesiredValue
63
+
64
+ @DesiredValue.setter
65
+ def DesiredValue(self, DesiredValue):
66
+ self._DesiredValue = DesiredValue
67
+
68
+ @property
69
+ def Operator(self):
70
+ """Comparison operator between current and desired configuration of the resource. Length is 0-16 characters. This field may be empty when custom rule reporting evaluation result.
71
+ :rtype: str
72
+ """
73
+ return self._Operator
74
+
75
+ @Operator.setter
76
+ def Operator(self, Operator):
77
+ self._Operator = Operator
78
+
79
+ @property
80
+ def Property(self):
81
+ """JSON path of current configuration in resource attribute structure. Length is 0-256 characters. This field may be empty when custom rule reporting evaluation result.
82
+ :rtype: str
83
+ """
84
+ return self._Property
85
+
86
+ @Property.setter
87
+ def Property(self, Property):
88
+ self._Property = Property
89
+
90
+
91
+ def _deserialize(self, params):
92
+ self._Configuration = params.get("Configuration")
93
+ self._DesiredValue = params.get("DesiredValue")
94
+ self._Operator = params.get("Operator")
95
+ self._Property = params.get("Property")
96
+ memeber_set = set(params.keys())
97
+ for name, value in vars(self).items():
98
+ property_name = name[1:]
99
+ if property_name in memeber_set:
100
+ memeber_set.remove(property_name)
101
+ if len(memeber_set) > 0:
102
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
103
+
104
+
105
+
106
+ class ConfigRule(AbstractModel):
107
+ """Rule details
108
+
109
+ """
110
+
111
+ def __init__(self):
112
+ r"""
113
+ :param _Identifier: Rule identifier
114
+ Note: This field may return null, indicating that no valid value is found.
115
+ :type Identifier: str
116
+ :param _RuleName: Name of the rule
117
+
118
+ Note: This field may return null, indicating that no valid value is found.
119
+ :type RuleName: str
120
+ :param _InputParameter: Rule parameters
121
+ Note: This field may return null, indicating that no valid value is found.
122
+ :type InputParameter: list of InputParameter
123
+ :param _SourceCondition: Rule trigger condition.
124
+
125
+ Note: This field may return null, indicating that no valid value is found.
126
+ :type SourceCondition: list of SourceConditionForManage
127
+ :param _ResourceType: Resource types supported by rule. The rule only applies to specified resource types.
128
+ Note: This field may return null, indicating that no valid value is found.
129
+ :type ResourceType: list of str
130
+ :param _Labels: Rule ownership tag
131
+ Note: This field may return null, indicating that no valid value is found.
132
+ :type Labels: list of str
133
+ :param _RiskLevel: Rule risk level
134
+ 1: Low risk
135
+ 2: Medium risk
136
+ 3: High risk
137
+ Note: This field may return null, indicating that no valid value is found.
138
+ :type RiskLevel: int
139
+ :param _ServiceFunction: Function corresponding to rule
140
+ Note: This field may return null, indicating that no valid value is found.
141
+ :type ServiceFunction: str
142
+ :param _CreateTime: Creation time
143
+
144
+ Format: YYYY-MM-DD h:i:s
145
+ Note: This field may return null, indicating that no valid value is found.
146
+ :type CreateTime: str
147
+ :param _Description: Rule description
148
+
149
+ Note: This field may return null, indicating that no valid value is found.
150
+ :type Description: str
151
+ :param _Status: ACTIVE: Enabled
152
+ NO_ACTIVE: Disabled
153
+ Note: This field may return null, indicating that no valid value is found.
154
+ :type Status: str
155
+ :param _ComplianceResult: Compliance: 'COMPLIANT'
156
+ 'NON_COMPLIANT'
157
+ 'NOT_APPLICABLE'
158
+ Note: This field may return null, indicating that no valid value is found.
159
+ :type ComplianceResult: str
160
+ :param _Annotation: ["",""]
161
+ Note: This field may return null, indicating that no valid value is found.
162
+ :type Annotation: :class:`tencentcloud.config.v20220802.models.Annotation`
163
+ :param _ConfigRuleInvokedTime: Rule evaluation time
164
+ Format: YYYY-MM-DD h:i:s
165
+
166
+ Note: This field may return null, indicating that no valid value is found.
167
+ :type ConfigRuleInvokedTime: str
168
+ :param _ConfigRuleId: Rule ID
169
+
170
+ Note: This field may return null, indicating that no valid value is found.
171
+ :type ConfigRuleId: str
172
+ :param _IdentifierType: CUSTOMIZE
173
+ Managed rule
174
+ Note: This field may return null, indicating that no valid value is found.
175
+ :type IdentifierType: str
176
+ :param _CompliancePackId: Compliance package ID
177
+ Note: This field may return null, indicating that no valid value is found.
178
+ :type CompliancePackId: str
179
+ :param _TriggerType: Trigger Type
180
+
181
+ Scheduled trigger
182
+ Triggered by configuration change
183
+ Note: This field may return null, indicating that no valid value is found.
184
+ :type TriggerType: list of TriggerType
185
+ :param _ManageInputParameter: Parameter details
186
+
187
+ Note: This field may return null, indicating that no valid value is found.
188
+ :type ManageInputParameter: list of InputParameterForManage
189
+ :param _CompliancePackName: Rule name
190
+
191
+ Note: This field may return null, indicating that no valid value is found.
192
+ :type CompliancePackName: str
193
+ :param _RegionsScope: Associated region
194
+ Note: This field may return null, indicating that no valid value is found.
195
+ :type RegionsScope: list of str
196
+ :param _TagsScope: Associate Tag
197
+
198
+ Note: This field may return null, indicating that no valid value is found.
199
+ :type TagsScope: list of Tag
200
+ :param _ExcludeResourceIdsScope: The rule is invalid for the specified resource ID, meaning it does not evaluate the resource.
201
+ Note: This field may return null, indicating that no valid value is found.
202
+ :type ExcludeResourceIdsScope: list of str
203
+ :param _AccountGroupId: Account group ID
204
+
205
+ Note: This field may return null, indicating that no valid value is found.
206
+ :type AccountGroupId: str
207
+ :param _AccountGroupName: Account group name
208
+ Note: This field may return null, indicating that no valid value is found.
209
+ :type AccountGroupName: str
210
+ :param _RuleOwnerId: Rule owner user ID
211
+ Note: This field may return null, indicating that no valid value is found.
212
+ :type RuleOwnerId: int
213
+ :param _ManageTriggerType: Trigger methods supported by preset rules
214
+ Scheduled trigger
215
+ Triggered by configuration change
216
+ :type ManageTriggerType: list of str
217
+ """
218
+ self._Identifier = None
219
+ self._RuleName = None
220
+ self._InputParameter = None
221
+ self._SourceCondition = None
222
+ self._ResourceType = None
223
+ self._Labels = None
224
+ self._RiskLevel = None
225
+ self._ServiceFunction = None
226
+ self._CreateTime = None
227
+ self._Description = None
228
+ self._Status = None
229
+ self._ComplianceResult = None
230
+ self._Annotation = None
231
+ self._ConfigRuleInvokedTime = None
232
+ self._ConfigRuleId = None
233
+ self._IdentifierType = None
234
+ self._CompliancePackId = None
235
+ self._TriggerType = None
236
+ self._ManageInputParameter = None
237
+ self._CompliancePackName = None
238
+ self._RegionsScope = None
239
+ self._TagsScope = None
240
+ self._ExcludeResourceIdsScope = None
241
+ self._AccountGroupId = None
242
+ self._AccountGroupName = None
243
+ self._RuleOwnerId = None
244
+ self._ManageTriggerType = None
245
+
246
+ @property
247
+ def Identifier(self):
248
+ """Rule identifier
249
+ Note: This field may return null, indicating that no valid value is found.
250
+ :rtype: str
251
+ """
252
+ return self._Identifier
253
+
254
+ @Identifier.setter
255
+ def Identifier(self, Identifier):
256
+ self._Identifier = Identifier
257
+
258
+ @property
259
+ def RuleName(self):
260
+ """Name of the rule
261
+
262
+ Note: This field may return null, indicating that no valid value is found.
263
+ :rtype: str
264
+ """
265
+ return self._RuleName
266
+
267
+ @RuleName.setter
268
+ def RuleName(self, RuleName):
269
+ self._RuleName = RuleName
270
+
271
+ @property
272
+ def InputParameter(self):
273
+ """Rule parameters
274
+ Note: This field may return null, indicating that no valid value is found.
275
+ :rtype: list of InputParameter
276
+ """
277
+ return self._InputParameter
278
+
279
+ @InputParameter.setter
280
+ def InputParameter(self, InputParameter):
281
+ self._InputParameter = InputParameter
282
+
283
+ @property
284
+ def SourceCondition(self):
285
+ """Rule trigger condition.
286
+
287
+ Note: This field may return null, indicating that no valid value is found.
288
+ :rtype: list of SourceConditionForManage
289
+ """
290
+ return self._SourceCondition
291
+
292
+ @SourceCondition.setter
293
+ def SourceCondition(self, SourceCondition):
294
+ self._SourceCondition = SourceCondition
295
+
296
+ @property
297
+ def ResourceType(self):
298
+ """Resource types supported by rule. The rule only applies to specified resource types.
299
+ Note: This field may return null, indicating that no valid value is found.
300
+ :rtype: list of str
301
+ """
302
+ return self._ResourceType
303
+
304
+ @ResourceType.setter
305
+ def ResourceType(self, ResourceType):
306
+ self._ResourceType = ResourceType
307
+
308
+ @property
309
+ def Labels(self):
310
+ """Rule ownership tag
311
+ Note: This field may return null, indicating that no valid value is found.
312
+ :rtype: list of str
313
+ """
314
+ return self._Labels
315
+
316
+ @Labels.setter
317
+ def Labels(self, Labels):
318
+ self._Labels = Labels
319
+
320
+ @property
321
+ def RiskLevel(self):
322
+ """Rule risk level
323
+ 1: Low risk
324
+ 2: Medium risk
325
+ 3: High risk
326
+ Note: This field may return null, indicating that no valid value is found.
327
+ :rtype: int
328
+ """
329
+ return self._RiskLevel
330
+
331
+ @RiskLevel.setter
332
+ def RiskLevel(self, RiskLevel):
333
+ self._RiskLevel = RiskLevel
334
+
335
+ @property
336
+ def ServiceFunction(self):
337
+ """Function corresponding to rule
338
+ Note: This field may return null, indicating that no valid value is found.
339
+ :rtype: str
340
+ """
341
+ return self._ServiceFunction
342
+
343
+ @ServiceFunction.setter
344
+ def ServiceFunction(self, ServiceFunction):
345
+ self._ServiceFunction = ServiceFunction
346
+
347
+ @property
348
+ def CreateTime(self):
349
+ """Creation time
350
+
351
+ Format: YYYY-MM-DD h:i:s
352
+ Note: This field may return null, indicating that no valid value is found.
353
+ :rtype: str
354
+ """
355
+ return self._CreateTime
356
+
357
+ @CreateTime.setter
358
+ def CreateTime(self, CreateTime):
359
+ self._CreateTime = CreateTime
360
+
361
+ @property
362
+ def Description(self):
363
+ """Rule description
364
+
365
+ Note: This field may return null, indicating that no valid value is found.
366
+ :rtype: str
367
+ """
368
+ return self._Description
369
+
370
+ @Description.setter
371
+ def Description(self, Description):
372
+ self._Description = Description
373
+
374
+ @property
375
+ def Status(self):
376
+ """ACTIVE: Enabled
377
+ NO_ACTIVE: Disabled
378
+ Note: This field may return null, indicating that no valid value is found.
379
+ :rtype: str
380
+ """
381
+ return self._Status
382
+
383
+ @Status.setter
384
+ def Status(self, Status):
385
+ self._Status = Status
386
+
387
+ @property
388
+ def ComplianceResult(self):
389
+ """Compliance: 'COMPLIANT'
390
+ 'NON_COMPLIANT'
391
+ 'NOT_APPLICABLE'
392
+ Note: This field may return null, indicating that no valid value is found.
393
+ :rtype: str
394
+ """
395
+ return self._ComplianceResult
396
+
397
+ @ComplianceResult.setter
398
+ def ComplianceResult(self, ComplianceResult):
399
+ self._ComplianceResult = ComplianceResult
400
+
401
+ @property
402
+ def Annotation(self):
403
+ """["",""]
404
+ Note: This field may return null, indicating that no valid value is found.
405
+ :rtype: :class:`tencentcloud.config.v20220802.models.Annotation`
406
+ """
407
+ return self._Annotation
408
+
409
+ @Annotation.setter
410
+ def Annotation(self, Annotation):
411
+ self._Annotation = Annotation
412
+
413
+ @property
414
+ def ConfigRuleInvokedTime(self):
415
+ """Rule evaluation time
416
+ Format: YYYY-MM-DD h:i:s
417
+
418
+ Note: This field may return null, indicating that no valid value is found.
419
+ :rtype: str
420
+ """
421
+ return self._ConfigRuleInvokedTime
422
+
423
+ @ConfigRuleInvokedTime.setter
424
+ def ConfigRuleInvokedTime(self, ConfigRuleInvokedTime):
425
+ self._ConfigRuleInvokedTime = ConfigRuleInvokedTime
426
+
427
+ @property
428
+ def ConfigRuleId(self):
429
+ """Rule ID
430
+
431
+ Note: This field may return null, indicating that no valid value is found.
432
+ :rtype: str
433
+ """
434
+ return self._ConfigRuleId
435
+
436
+ @ConfigRuleId.setter
437
+ def ConfigRuleId(self, ConfigRuleId):
438
+ self._ConfigRuleId = ConfigRuleId
439
+
440
+ @property
441
+ def IdentifierType(self):
442
+ """CUSTOMIZE
443
+ Managed rule
444
+ Note: This field may return null, indicating that no valid value is found.
445
+ :rtype: str
446
+ """
447
+ return self._IdentifierType
448
+
449
+ @IdentifierType.setter
450
+ def IdentifierType(self, IdentifierType):
451
+ self._IdentifierType = IdentifierType
452
+
453
+ @property
454
+ def CompliancePackId(self):
455
+ """Compliance package ID
456
+ Note: This field may return null, indicating that no valid value is found.
457
+ :rtype: str
458
+ """
459
+ return self._CompliancePackId
460
+
461
+ @CompliancePackId.setter
462
+ def CompliancePackId(self, CompliancePackId):
463
+ self._CompliancePackId = CompliancePackId
464
+
465
+ @property
466
+ def TriggerType(self):
467
+ """Trigger Type
468
+
469
+ Scheduled trigger
470
+ Triggered by configuration change
471
+ Note: This field may return null, indicating that no valid value is found.
472
+ :rtype: list of TriggerType
473
+ """
474
+ return self._TriggerType
475
+
476
+ @TriggerType.setter
477
+ def TriggerType(self, TriggerType):
478
+ self._TriggerType = TriggerType
479
+
480
+ @property
481
+ def ManageInputParameter(self):
482
+ """Parameter details
483
+
484
+ Note: This field may return null, indicating that no valid value is found.
485
+ :rtype: list of InputParameterForManage
486
+ """
487
+ return self._ManageInputParameter
488
+
489
+ @ManageInputParameter.setter
490
+ def ManageInputParameter(self, ManageInputParameter):
491
+ self._ManageInputParameter = ManageInputParameter
492
+
493
+ @property
494
+ def CompliancePackName(self):
495
+ """Rule name
496
+
497
+ Note: This field may return null, indicating that no valid value is found.
498
+ :rtype: str
499
+ """
500
+ return self._CompliancePackName
501
+
502
+ @CompliancePackName.setter
503
+ def CompliancePackName(self, CompliancePackName):
504
+ self._CompliancePackName = CompliancePackName
505
+
506
+ @property
507
+ def RegionsScope(self):
508
+ """Associated region
509
+ Note: This field may return null, indicating that no valid value is found.
510
+ :rtype: list of str
511
+ """
512
+ return self._RegionsScope
513
+
514
+ @RegionsScope.setter
515
+ def RegionsScope(self, RegionsScope):
516
+ self._RegionsScope = RegionsScope
517
+
518
+ @property
519
+ def TagsScope(self):
520
+ """Associate Tag
521
+
522
+ Note: This field may return null, indicating that no valid value is found.
523
+ :rtype: list of Tag
524
+ """
525
+ return self._TagsScope
526
+
527
+ @TagsScope.setter
528
+ def TagsScope(self, TagsScope):
529
+ self._TagsScope = TagsScope
530
+
531
+ @property
532
+ def ExcludeResourceIdsScope(self):
533
+ """ The rule is invalid for the specified resource ID, meaning it does not evaluate the resource.
534
+ Note: This field may return null, indicating that no valid value is found.
535
+ :rtype: list of str
536
+ """
537
+ return self._ExcludeResourceIdsScope
538
+
539
+ @ExcludeResourceIdsScope.setter
540
+ def ExcludeResourceIdsScope(self, ExcludeResourceIdsScope):
541
+ self._ExcludeResourceIdsScope = ExcludeResourceIdsScope
542
+
543
+ @property
544
+ def AccountGroupId(self):
545
+ """Account group ID
546
+
547
+ Note: This field may return null, indicating that no valid value is found.
548
+ :rtype: str
549
+ """
550
+ return self._AccountGroupId
551
+
552
+ @AccountGroupId.setter
553
+ def AccountGroupId(self, AccountGroupId):
554
+ self._AccountGroupId = AccountGroupId
555
+
556
+ @property
557
+ def AccountGroupName(self):
558
+ """Account group name
559
+ Note: This field may return null, indicating that no valid value is found.
560
+ :rtype: str
561
+ """
562
+ return self._AccountGroupName
563
+
564
+ @AccountGroupName.setter
565
+ def AccountGroupName(self, AccountGroupName):
566
+ self._AccountGroupName = AccountGroupName
567
+
568
+ @property
569
+ def RuleOwnerId(self):
570
+ """Rule owner user ID
571
+ Note: This field may return null, indicating that no valid value is found.
572
+ :rtype: int
573
+ """
574
+ return self._RuleOwnerId
575
+
576
+ @RuleOwnerId.setter
577
+ def RuleOwnerId(self, RuleOwnerId):
578
+ self._RuleOwnerId = RuleOwnerId
579
+
580
+ @property
581
+ def ManageTriggerType(self):
582
+ """Trigger methods supported by preset rules
583
+ Scheduled trigger
584
+ Triggered by configuration change
585
+ :rtype: list of str
586
+ """
587
+ return self._ManageTriggerType
588
+
589
+ @ManageTriggerType.setter
590
+ def ManageTriggerType(self, ManageTriggerType):
591
+ self._ManageTriggerType = ManageTriggerType
592
+
593
+
594
+ def _deserialize(self, params):
595
+ self._Identifier = params.get("Identifier")
596
+ self._RuleName = params.get("RuleName")
597
+ if params.get("InputParameter") is not None:
598
+ self._InputParameter = []
599
+ for item in params.get("InputParameter"):
600
+ obj = InputParameter()
601
+ obj._deserialize(item)
602
+ self._InputParameter.append(obj)
603
+ if params.get("SourceCondition") is not None:
604
+ self._SourceCondition = []
605
+ for item in params.get("SourceCondition"):
606
+ obj = SourceConditionForManage()
607
+ obj._deserialize(item)
608
+ self._SourceCondition.append(obj)
609
+ self._ResourceType = params.get("ResourceType")
610
+ self._Labels = params.get("Labels")
611
+ self._RiskLevel = params.get("RiskLevel")
612
+ self._ServiceFunction = params.get("ServiceFunction")
613
+ self._CreateTime = params.get("CreateTime")
614
+ self._Description = params.get("Description")
615
+ self._Status = params.get("Status")
616
+ self._ComplianceResult = params.get("ComplianceResult")
617
+ if params.get("Annotation") is not None:
618
+ self._Annotation = Annotation()
619
+ self._Annotation._deserialize(params.get("Annotation"))
620
+ self._ConfigRuleInvokedTime = params.get("ConfigRuleInvokedTime")
621
+ self._ConfigRuleId = params.get("ConfigRuleId")
622
+ self._IdentifierType = params.get("IdentifierType")
623
+ self._CompliancePackId = params.get("CompliancePackId")
624
+ if params.get("TriggerType") is not None:
625
+ self._TriggerType = []
626
+ for item in params.get("TriggerType"):
627
+ obj = TriggerType()
628
+ obj._deserialize(item)
629
+ self._TriggerType.append(obj)
630
+ if params.get("ManageInputParameter") is not None:
631
+ self._ManageInputParameter = []
632
+ for item in params.get("ManageInputParameter"):
633
+ obj = InputParameterForManage()
634
+ obj._deserialize(item)
635
+ self._ManageInputParameter.append(obj)
636
+ self._CompliancePackName = params.get("CompliancePackName")
637
+ self._RegionsScope = params.get("RegionsScope")
638
+ if params.get("TagsScope") is not None:
639
+ self._TagsScope = []
640
+ for item in params.get("TagsScope"):
641
+ obj = Tag()
642
+ obj._deserialize(item)
643
+ self._TagsScope.append(obj)
644
+ self._ExcludeResourceIdsScope = params.get("ExcludeResourceIdsScope")
645
+ self._AccountGroupId = params.get("AccountGroupId")
646
+ self._AccountGroupName = params.get("AccountGroupName")
647
+ self._RuleOwnerId = params.get("RuleOwnerId")
648
+ self._ManageTriggerType = params.get("ManageTriggerType")
649
+ memeber_set = set(params.keys())
650
+ for name, value in vars(self).items():
651
+ property_name = name[1:]
652
+ if property_name in memeber_set:
653
+ memeber_set.remove(property_name)
654
+ if len(memeber_set) > 0:
655
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
656
+
657
+
658
+
659
+ class DescribeDiscoveredResourceRequest(AbstractModel):
660
+ """DescribeDiscoveredResource request structure.
661
+
662
+ """
663
+
664
+ def __init__(self):
665
+ r"""
666
+ :param _ResourceId: Resource ID
667
+ :type ResourceId: str
668
+ :param _ResourceType: Resource type
669
+ :type ResourceType: str
670
+ :param _ResourceRegion: Resource region
671
+ :type ResourceRegion: str
672
+ """
673
+ self._ResourceId = None
674
+ self._ResourceType = None
675
+ self._ResourceRegion = None
676
+
677
+ @property
678
+ def ResourceId(self):
679
+ """Resource ID
680
+ :rtype: str
681
+ """
682
+ return self._ResourceId
683
+
684
+ @ResourceId.setter
685
+ def ResourceId(self, ResourceId):
686
+ self._ResourceId = ResourceId
687
+
688
+ @property
689
+ def ResourceType(self):
690
+ """Resource type
691
+ :rtype: str
692
+ """
693
+ return self._ResourceType
694
+
695
+ @ResourceType.setter
696
+ def ResourceType(self, ResourceType):
697
+ self._ResourceType = ResourceType
698
+
699
+ @property
700
+ def ResourceRegion(self):
701
+ """Resource region
702
+ :rtype: str
703
+ """
704
+ return self._ResourceRegion
705
+
706
+ @ResourceRegion.setter
707
+ def ResourceRegion(self, ResourceRegion):
708
+ self._ResourceRegion = ResourceRegion
709
+
710
+
711
+ def _deserialize(self, params):
712
+ self._ResourceId = params.get("ResourceId")
713
+ self._ResourceType = params.get("ResourceType")
714
+ self._ResourceRegion = params.get("ResourceRegion")
715
+ memeber_set = set(params.keys())
716
+ for name, value in vars(self).items():
717
+ property_name = name[1:]
718
+ if property_name in memeber_set:
719
+ memeber_set.remove(property_name)
720
+ if len(memeber_set) > 0:
721
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
722
+
723
+
724
+
725
+ class DescribeDiscoveredResourceResponse(AbstractModel):
726
+ """DescribeDiscoveredResource response structure.
727
+
728
+ """
729
+
730
+ def __init__(self):
731
+ r"""
732
+ :param _ResourceId: Resource ID
733
+
734
+ Note: This field may return null, indicating that no valid value is found.
735
+ :type ResourceId: str
736
+ :param _ResourceType: Resource type
737
+
738
+ Note: This field may return null, indicating that no valid value is found.
739
+ :type ResourceType: str
740
+ :param _ResourceName: Resource Name
741
+
742
+ Note: This field may return null, indicating that no valid value is found.
743
+ :type ResourceName: str
744
+ :param _ResourceRegion: Resource region
745
+
746
+ Note: This field may return null, indicating that no valid value is found.
747
+ :type ResourceRegion: str
748
+ :param _ResourceZone: Resource availability zone
749
+ Note: This field may return null, indicating that no valid value is found.
750
+ :type ResourceZone: str
751
+ :param _Configuration: Resource configuration
752
+
753
+ Note: This field may return null, indicating that no valid value is found.
754
+ :type Configuration: str
755
+ :param _ResourceCreateTime: Resource creation time
756
+
757
+ Note: This field may return null, indicating that no valid value is found.
758
+ :type ResourceCreateTime: str
759
+ :param _Tags: Resource tag
760
+
761
+ Note: This field may return null, indicating that no valid value is found.
762
+ :type Tags: list of Tag
763
+ :param _UpdateTime: Resource update time
764
+ Note: This field may return null, indicating that no valid value is found.
765
+ :type UpdateTime: str
766
+ :param _RequestId: The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
767
+ :type RequestId: str
768
+ """
769
+ self._ResourceId = None
770
+ self._ResourceType = None
771
+ self._ResourceName = None
772
+ self._ResourceRegion = None
773
+ self._ResourceZone = None
774
+ self._Configuration = None
775
+ self._ResourceCreateTime = None
776
+ self._Tags = None
777
+ self._UpdateTime = None
778
+ self._RequestId = None
779
+
780
+ @property
781
+ def ResourceId(self):
782
+ """Resource ID
783
+
784
+ Note: This field may return null, indicating that no valid value is found.
785
+ :rtype: str
786
+ """
787
+ return self._ResourceId
788
+
789
+ @ResourceId.setter
790
+ def ResourceId(self, ResourceId):
791
+ self._ResourceId = ResourceId
792
+
793
+ @property
794
+ def ResourceType(self):
795
+ """Resource type
796
+
797
+ Note: This field may return null, indicating that no valid value is found.
798
+ :rtype: str
799
+ """
800
+ return self._ResourceType
801
+
802
+ @ResourceType.setter
803
+ def ResourceType(self, ResourceType):
804
+ self._ResourceType = ResourceType
805
+
806
+ @property
807
+ def ResourceName(self):
808
+ """Resource Name
809
+
810
+ Note: This field may return null, indicating that no valid value is found.
811
+ :rtype: str
812
+ """
813
+ return self._ResourceName
814
+
815
+ @ResourceName.setter
816
+ def ResourceName(self, ResourceName):
817
+ self._ResourceName = ResourceName
818
+
819
+ @property
820
+ def ResourceRegion(self):
821
+ """Resource region
822
+
823
+ Note: This field may return null, indicating that no valid value is found.
824
+ :rtype: str
825
+ """
826
+ return self._ResourceRegion
827
+
828
+ @ResourceRegion.setter
829
+ def ResourceRegion(self, ResourceRegion):
830
+ self._ResourceRegion = ResourceRegion
831
+
832
+ @property
833
+ def ResourceZone(self):
834
+ """Resource availability zone
835
+ Note: This field may return null, indicating that no valid value is found.
836
+ :rtype: str
837
+ """
838
+ return self._ResourceZone
839
+
840
+ @ResourceZone.setter
841
+ def ResourceZone(self, ResourceZone):
842
+ self._ResourceZone = ResourceZone
843
+
844
+ @property
845
+ def Configuration(self):
846
+ """Resource configuration
847
+
848
+ Note: This field may return null, indicating that no valid value is found.
849
+ :rtype: str
850
+ """
851
+ return self._Configuration
852
+
853
+ @Configuration.setter
854
+ def Configuration(self, Configuration):
855
+ self._Configuration = Configuration
856
+
857
+ @property
858
+ def ResourceCreateTime(self):
859
+ """Resource creation time
860
+
861
+ Note: This field may return null, indicating that no valid value is found.
862
+ :rtype: str
863
+ """
864
+ return self._ResourceCreateTime
865
+
866
+ @ResourceCreateTime.setter
867
+ def ResourceCreateTime(self, ResourceCreateTime):
868
+ self._ResourceCreateTime = ResourceCreateTime
869
+
870
+ @property
871
+ def Tags(self):
872
+ """Resource tag
873
+
874
+ Note: This field may return null, indicating that no valid value is found.
875
+ :rtype: list of Tag
876
+ """
877
+ return self._Tags
878
+
879
+ @Tags.setter
880
+ def Tags(self, Tags):
881
+ self._Tags = Tags
882
+
883
+ @property
884
+ def UpdateTime(self):
885
+ """Resource update time
886
+ Note: This field may return null, indicating that no valid value is found.
887
+ :rtype: str
888
+ """
889
+ return self._UpdateTime
890
+
891
+ @UpdateTime.setter
892
+ def UpdateTime(self, UpdateTime):
893
+ self._UpdateTime = UpdateTime
894
+
895
+ @property
896
+ def RequestId(self):
897
+ """The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
898
+ :rtype: str
899
+ """
900
+ return self._RequestId
901
+
902
+ @RequestId.setter
903
+ def RequestId(self, RequestId):
904
+ self._RequestId = RequestId
905
+
906
+
907
+ def _deserialize(self, params):
908
+ self._ResourceId = params.get("ResourceId")
909
+ self._ResourceType = params.get("ResourceType")
910
+ self._ResourceName = params.get("ResourceName")
911
+ self._ResourceRegion = params.get("ResourceRegion")
912
+ self._ResourceZone = params.get("ResourceZone")
913
+ self._Configuration = params.get("Configuration")
914
+ self._ResourceCreateTime = params.get("ResourceCreateTime")
915
+ if params.get("Tags") is not None:
916
+ self._Tags = []
917
+ for item in params.get("Tags"):
918
+ obj = Tag()
919
+ obj._deserialize(item)
920
+ self._Tags.append(obj)
921
+ self._UpdateTime = params.get("UpdateTime")
922
+ self._RequestId = params.get("RequestId")
923
+
924
+
925
+ class Evaluation(AbstractModel):
926
+ """Custom rule evaluation result
927
+
928
+ """
929
+
930
+ def __init__(self):
931
+ r"""
932
+ :param _ComplianceResourceId: Evaluated resource id. It can contain 0 to 256 characters.
933
+ :type ComplianceResourceId: str
934
+ :param _ComplianceResourceType: Evaluated resource type.
935
+ Supported:
936
+ QCS::CVM::Instance、 QCS::CBS::Disk、QCS::VPC::Vpc、QCS::VPC::Subnet、QCS::VPC::SecurityGroup、 QCS::CAM::User、QCS::CAM::Group、QCS::CAM::Policy、QCS::CAM::Role、QCS::COS::Bucket
937
+ :type ComplianceResourceType: str
938
+ :param _ComplianceRegion: Evaluated resource region.
939
+ It can contain 0 to 32 characters.
940
+ :type ComplianceRegion: str
941
+ :param _ComplianceType: Compliance type. Valid values:
942
+ COMPLIANT: Compliant,
943
+ NON_COMPLIANT: Non-compliant
944
+ :type ComplianceType: str
945
+ :param _Annotation: Supplementary information for non-compliant resources.
946
+ :type Annotation: :class:`tencentcloud.config.v20220802.models.Annotation`
947
+ """
948
+ self._ComplianceResourceId = None
949
+ self._ComplianceResourceType = None
950
+ self._ComplianceRegion = None
951
+ self._ComplianceType = None
952
+ self._Annotation = None
953
+
954
+ @property
955
+ def ComplianceResourceId(self):
956
+ """Evaluated resource id. It can contain 0 to 256 characters.
957
+ :rtype: str
958
+ """
959
+ return self._ComplianceResourceId
960
+
961
+ @ComplianceResourceId.setter
962
+ def ComplianceResourceId(self, ComplianceResourceId):
963
+ self._ComplianceResourceId = ComplianceResourceId
964
+
965
+ @property
966
+ def ComplianceResourceType(self):
967
+ """Evaluated resource type.
968
+ Supported:
969
+ QCS::CVM::Instance、 QCS::CBS::Disk、QCS::VPC::Vpc、QCS::VPC::Subnet、QCS::VPC::SecurityGroup、 QCS::CAM::User、QCS::CAM::Group、QCS::CAM::Policy、QCS::CAM::Role、QCS::COS::Bucket
970
+ :rtype: str
971
+ """
972
+ return self._ComplianceResourceType
973
+
974
+ @ComplianceResourceType.setter
975
+ def ComplianceResourceType(self, ComplianceResourceType):
976
+ self._ComplianceResourceType = ComplianceResourceType
977
+
978
+ @property
979
+ def ComplianceRegion(self):
980
+ """Evaluated resource region.
981
+ It can contain 0 to 32 characters.
982
+ :rtype: str
983
+ """
984
+ return self._ComplianceRegion
985
+
986
+ @ComplianceRegion.setter
987
+ def ComplianceRegion(self, ComplianceRegion):
988
+ self._ComplianceRegion = ComplianceRegion
989
+
990
+ @property
991
+ def ComplianceType(self):
992
+ """Compliance type. Valid values:
993
+ COMPLIANT: Compliant,
994
+ NON_COMPLIANT: Non-compliant
995
+ :rtype: str
996
+ """
997
+ return self._ComplianceType
998
+
999
+ @ComplianceType.setter
1000
+ def ComplianceType(self, ComplianceType):
1001
+ self._ComplianceType = ComplianceType
1002
+
1003
+ @property
1004
+ def Annotation(self):
1005
+ """Supplementary information for non-compliant resources.
1006
+ :rtype: :class:`tencentcloud.config.v20220802.models.Annotation`
1007
+ """
1008
+ return self._Annotation
1009
+
1010
+ @Annotation.setter
1011
+ def Annotation(self, Annotation):
1012
+ self._Annotation = Annotation
1013
+
1014
+
1015
+ def _deserialize(self, params):
1016
+ self._ComplianceResourceId = params.get("ComplianceResourceId")
1017
+ self._ComplianceResourceType = params.get("ComplianceResourceType")
1018
+ self._ComplianceRegion = params.get("ComplianceRegion")
1019
+ self._ComplianceType = params.get("ComplianceType")
1020
+ if params.get("Annotation") is not None:
1021
+ self._Annotation = Annotation()
1022
+ self._Annotation._deserialize(params.get("Annotation"))
1023
+ memeber_set = set(params.keys())
1024
+ for name, value in vars(self).items():
1025
+ property_name = name[1:]
1026
+ if property_name in memeber_set:
1027
+ memeber_set.remove(property_name)
1028
+ if len(memeber_set) > 0:
1029
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
1030
+
1031
+
1032
+
1033
+ class Filter(AbstractModel):
1034
+ """Resource list filter
1035
+
1036
+ """
1037
+
1038
+ def __init__(self):
1039
+ r"""
1040
+ :param _Name: Query field name Resource name: resourceName Resource ID: resourceId Resource type: resourceType Resource region: resourceRegion Deletion status: resourceDelete 0 not deleted, 1 deleted resourceregionandzone region/az
1041
+ :type Name: str
1042
+ :param _Values: Value of the field to query
1043
+ :type Values: list of str
1044
+ """
1045
+ self._Name = None
1046
+ self._Values = None
1047
+
1048
+ @property
1049
+ def Name(self):
1050
+ """Query field name Resource name: resourceName Resource ID: resourceId Resource type: resourceType Resource region: resourceRegion Deletion status: resourceDelete 0 not deleted, 1 deleted resourceregionandzone region/az
1051
+ :rtype: str
1052
+ """
1053
+ return self._Name
1054
+
1055
+ @Name.setter
1056
+ def Name(self, Name):
1057
+ self._Name = Name
1058
+
1059
+ @property
1060
+ def Values(self):
1061
+ """Value of the field to query
1062
+ :rtype: list of str
1063
+ """
1064
+ return self._Values
1065
+
1066
+ @Values.setter
1067
+ def Values(self, Values):
1068
+ self._Values = Values
1069
+
1070
+
1071
+ def _deserialize(self, params):
1072
+ self._Name = params.get("Name")
1073
+ self._Values = params.get("Values")
1074
+ memeber_set = set(params.keys())
1075
+ for name, value in vars(self).items():
1076
+ property_name = name[1:]
1077
+ if property_name in memeber_set:
1078
+ memeber_set.remove(property_name)
1079
+ if len(memeber_set) > 0:
1080
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
1081
+
1082
+
1083
+
1084
+ class InputParameter(AbstractModel):
1085
+ """Parameter value
1086
+
1087
+ """
1088
+
1089
+ def __init__(self):
1090
+ r"""
1091
+ :param _ParameterKey: Parameter name
1092
+ :type ParameterKey: str
1093
+ :param _Type: Parameter type. Required type: Require, optional type: Optional.
1094
+ :type Type: str
1095
+ :param _Value: Parameter value
1096
+
1097
+ Note: This field may return null, indicating that no valid value is found.
1098
+ :type Value: str
1099
+ """
1100
+ self._ParameterKey = None
1101
+ self._Type = None
1102
+ self._Value = None
1103
+
1104
+ @property
1105
+ def ParameterKey(self):
1106
+ """Parameter name
1107
+ :rtype: str
1108
+ """
1109
+ return self._ParameterKey
1110
+
1111
+ @ParameterKey.setter
1112
+ def ParameterKey(self, ParameterKey):
1113
+ self._ParameterKey = ParameterKey
1114
+
1115
+ @property
1116
+ def Type(self):
1117
+ """Parameter type. Required type: Require, optional type: Optional.
1118
+ :rtype: str
1119
+ """
1120
+ return self._Type
1121
+
1122
+ @Type.setter
1123
+ def Type(self, Type):
1124
+ self._Type = Type
1125
+
1126
+ @property
1127
+ def Value(self):
1128
+ """Parameter value
1129
+
1130
+ Note: This field may return null, indicating that no valid value is found.
1131
+ :rtype: str
1132
+ """
1133
+ return self._Value
1134
+
1135
+ @Value.setter
1136
+ def Value(self, Value):
1137
+ self._Value = Value
1138
+
1139
+
1140
+ def _deserialize(self, params):
1141
+ self._ParameterKey = params.get("ParameterKey")
1142
+ self._Type = params.get("Type")
1143
+ self._Value = params.get("Value")
1144
+ memeber_set = set(params.keys())
1145
+ for name, value in vars(self).items():
1146
+ property_name = name[1:]
1147
+ if property_name in memeber_set:
1148
+ memeber_set.remove(property_name)
1149
+ if len(memeber_set) > 0:
1150
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
1151
+
1152
+
1153
+
1154
+ class InputParameterForManage(AbstractModel):
1155
+ """Rule input parameters
1156
+
1157
+ """
1158
+
1159
+ def __init__(self):
1160
+ r"""
1161
+ :param _ValueType: Value type. Integer: Integer, String: String.
1162
+ Note: This field may return null, indicating that no valid value is found.
1163
+ :type ValueType: str
1164
+ :param _ParameterKey: Parameter key
1165
+ Note: This field may return null, indicating that no valid value is found.
1166
+ :type ParameterKey: str
1167
+ :param _Type: Parameter type. Required type: Required, Optional type: Optional.
1168
+ Note: This field may return null, indicating that no valid value is found.
1169
+ :type Type: str
1170
+ :param _DefaultValue: Default value
1171
+
1172
+ Note: This field may return null, indicating that no valid value is found.
1173
+ :type DefaultValue: str
1174
+ :param _Description: Description
1175
+
1176
+ Note: This field may return null, indicating that no valid value is found.
1177
+ :type Description: str
1178
+ """
1179
+ self._ValueType = None
1180
+ self._ParameterKey = None
1181
+ self._Type = None
1182
+ self._DefaultValue = None
1183
+ self._Description = None
1184
+
1185
+ @property
1186
+ def ValueType(self):
1187
+ """Value type. Integer: Integer, String: String.
1188
+ Note: This field may return null, indicating that no valid value is found.
1189
+ :rtype: str
1190
+ """
1191
+ return self._ValueType
1192
+
1193
+ @ValueType.setter
1194
+ def ValueType(self, ValueType):
1195
+ self._ValueType = ValueType
1196
+
1197
+ @property
1198
+ def ParameterKey(self):
1199
+ """Parameter key
1200
+ Note: This field may return null, indicating that no valid value is found.
1201
+ :rtype: str
1202
+ """
1203
+ return self._ParameterKey
1204
+
1205
+ @ParameterKey.setter
1206
+ def ParameterKey(self, ParameterKey):
1207
+ self._ParameterKey = ParameterKey
1208
+
1209
+ @property
1210
+ def Type(self):
1211
+ """Parameter type. Required type: Required, Optional type: Optional.
1212
+ Note: This field may return null, indicating that no valid value is found.
1213
+ :rtype: str
1214
+ """
1215
+ return self._Type
1216
+
1217
+ @Type.setter
1218
+ def Type(self, Type):
1219
+ self._Type = Type
1220
+
1221
+ @property
1222
+ def DefaultValue(self):
1223
+ """Default value
1224
+
1225
+ Note: This field may return null, indicating that no valid value is found.
1226
+ :rtype: str
1227
+ """
1228
+ return self._DefaultValue
1229
+
1230
+ @DefaultValue.setter
1231
+ def DefaultValue(self, DefaultValue):
1232
+ self._DefaultValue = DefaultValue
1233
+
1234
+ @property
1235
+ def Description(self):
1236
+ """Description
1237
+
1238
+ Note: This field may return null, indicating that no valid value is found.
1239
+ :rtype: str
1240
+ """
1241
+ return self._Description
1242
+
1243
+ @Description.setter
1244
+ def Description(self, Description):
1245
+ self._Description = Description
1246
+
1247
+
1248
+ def _deserialize(self, params):
1249
+ self._ValueType = params.get("ValueType")
1250
+ self._ParameterKey = params.get("ParameterKey")
1251
+ self._Type = params.get("Type")
1252
+ self._DefaultValue = params.get("DefaultValue")
1253
+ self._Description = params.get("Description")
1254
+ memeber_set = set(params.keys())
1255
+ for name, value in vars(self).items():
1256
+ property_name = name[1:]
1257
+ if property_name in memeber_set:
1258
+ memeber_set.remove(property_name)
1259
+ if len(memeber_set) > 0:
1260
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
1261
+
1262
+
1263
+
1264
+ class ListAggregateConfigRulesRequest(AbstractModel):
1265
+ """ListAggregateConfigRules request structure.
1266
+
1267
+ """
1268
+
1269
+ def __init__(self):
1270
+ r"""
1271
+ :param _Limit: Specifies the limit per page.
1272
+ :type Limit: int
1273
+ :param _Offset: Offset.
1274
+ :type Offset: int
1275
+ :param _AccountGroupId: Account group ID
1276
+ :type AccountGroupId: str
1277
+ :param _OrderType: Sort type, descending: desc, ascending: asc.
1278
+ :type OrderType: str
1279
+ :param _RiskLevel: Risk level
1280
+
1281
+ 1: High risk.
1282
+ 2: Medium risk.
1283
+ 3: Low risk.
1284
+ :type RiskLevel: list of int non-negative
1285
+ :param _State: Rule status
1286
+ :type State: str
1287
+ :param _ComplianceResult: Evaluation result
1288
+ :type ComplianceResult: list of str
1289
+ :param _RuleName: Name of the rule
1290
+ :type RuleName: str
1291
+ :param _RuleOwnerId: Rule ownership account ID
1292
+ :type RuleOwnerId: int
1293
+ """
1294
+ self._Limit = None
1295
+ self._Offset = None
1296
+ self._AccountGroupId = None
1297
+ self._OrderType = None
1298
+ self._RiskLevel = None
1299
+ self._State = None
1300
+ self._ComplianceResult = None
1301
+ self._RuleName = None
1302
+ self._RuleOwnerId = None
1303
+
1304
+ @property
1305
+ def Limit(self):
1306
+ """Specifies the limit per page.
1307
+ :rtype: int
1308
+ """
1309
+ return self._Limit
1310
+
1311
+ @Limit.setter
1312
+ def Limit(self, Limit):
1313
+ self._Limit = Limit
1314
+
1315
+ @property
1316
+ def Offset(self):
1317
+ """Offset.
1318
+ :rtype: int
1319
+ """
1320
+ return self._Offset
1321
+
1322
+ @Offset.setter
1323
+ def Offset(self, Offset):
1324
+ self._Offset = Offset
1325
+
1326
+ @property
1327
+ def AccountGroupId(self):
1328
+ """Account group ID
1329
+ :rtype: str
1330
+ """
1331
+ return self._AccountGroupId
1332
+
1333
+ @AccountGroupId.setter
1334
+ def AccountGroupId(self, AccountGroupId):
1335
+ self._AccountGroupId = AccountGroupId
1336
+
1337
+ @property
1338
+ def OrderType(self):
1339
+ """Sort type, descending: desc, ascending: asc.
1340
+ :rtype: str
1341
+ """
1342
+ return self._OrderType
1343
+
1344
+ @OrderType.setter
1345
+ def OrderType(self, OrderType):
1346
+ self._OrderType = OrderType
1347
+
1348
+ @property
1349
+ def RiskLevel(self):
1350
+ """Risk level
1351
+
1352
+ 1: High risk.
1353
+ 2: Medium risk.
1354
+ 3: Low risk.
1355
+ :rtype: list of int non-negative
1356
+ """
1357
+ return self._RiskLevel
1358
+
1359
+ @RiskLevel.setter
1360
+ def RiskLevel(self, RiskLevel):
1361
+ self._RiskLevel = RiskLevel
1362
+
1363
+ @property
1364
+ def State(self):
1365
+ """Rule status
1366
+ :rtype: str
1367
+ """
1368
+ return self._State
1369
+
1370
+ @State.setter
1371
+ def State(self, State):
1372
+ self._State = State
1373
+
1374
+ @property
1375
+ def ComplianceResult(self):
1376
+ """Evaluation result
1377
+ :rtype: list of str
1378
+ """
1379
+ return self._ComplianceResult
1380
+
1381
+ @ComplianceResult.setter
1382
+ def ComplianceResult(self, ComplianceResult):
1383
+ self._ComplianceResult = ComplianceResult
1384
+
1385
+ @property
1386
+ def RuleName(self):
1387
+ """Name of the rule
1388
+ :rtype: str
1389
+ """
1390
+ return self._RuleName
1391
+
1392
+ @RuleName.setter
1393
+ def RuleName(self, RuleName):
1394
+ self._RuleName = RuleName
1395
+
1396
+ @property
1397
+ def RuleOwnerId(self):
1398
+ """Rule ownership account ID
1399
+ :rtype: int
1400
+ """
1401
+ return self._RuleOwnerId
1402
+
1403
+ @RuleOwnerId.setter
1404
+ def RuleOwnerId(self, RuleOwnerId):
1405
+ self._RuleOwnerId = RuleOwnerId
1406
+
1407
+
1408
+ def _deserialize(self, params):
1409
+ self._Limit = params.get("Limit")
1410
+ self._Offset = params.get("Offset")
1411
+ self._AccountGroupId = params.get("AccountGroupId")
1412
+ self._OrderType = params.get("OrderType")
1413
+ self._RiskLevel = params.get("RiskLevel")
1414
+ self._State = params.get("State")
1415
+ self._ComplianceResult = params.get("ComplianceResult")
1416
+ self._RuleName = params.get("RuleName")
1417
+ self._RuleOwnerId = params.get("RuleOwnerId")
1418
+ memeber_set = set(params.keys())
1419
+ for name, value in vars(self).items():
1420
+ property_name = name[1:]
1421
+ if property_name in memeber_set:
1422
+ memeber_set.remove(property_name)
1423
+ if len(memeber_set) > 0:
1424
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
1425
+
1426
+
1427
+
1428
+ class ListAggregateConfigRulesResponse(AbstractModel):
1429
+ """ListAggregateConfigRules response structure.
1430
+
1431
+ """
1432
+
1433
+ def __init__(self):
1434
+ r"""
1435
+ :param _Total: Total number
1436
+ :type Total: int
1437
+ :param _Items: Details
1438
+ :type Items: list of ConfigRule
1439
+ :param _RequestId: The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
1440
+ :type RequestId: str
1441
+ """
1442
+ self._Total = None
1443
+ self._Items = None
1444
+ self._RequestId = None
1445
+
1446
+ @property
1447
+ def Total(self):
1448
+ """Total number
1449
+ :rtype: int
1450
+ """
1451
+ return self._Total
1452
+
1453
+ @Total.setter
1454
+ def Total(self, Total):
1455
+ self._Total = Total
1456
+
1457
+ @property
1458
+ def Items(self):
1459
+ """Details
1460
+ :rtype: list of ConfigRule
1461
+ """
1462
+ return self._Items
1463
+
1464
+ @Items.setter
1465
+ def Items(self, Items):
1466
+ self._Items = Items
1467
+
1468
+ @property
1469
+ def RequestId(self):
1470
+ """The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
1471
+ :rtype: str
1472
+ """
1473
+ return self._RequestId
1474
+
1475
+ @RequestId.setter
1476
+ def RequestId(self, RequestId):
1477
+ self._RequestId = RequestId
1478
+
1479
+
1480
+ def _deserialize(self, params):
1481
+ self._Total = params.get("Total")
1482
+ if params.get("Items") is not None:
1483
+ self._Items = []
1484
+ for item in params.get("Items"):
1485
+ obj = ConfigRule()
1486
+ obj._deserialize(item)
1487
+ self._Items.append(obj)
1488
+ self._RequestId = params.get("RequestId")
1489
+
1490
+
1491
+ class ListConfigRulesRequest(AbstractModel):
1492
+ """ListConfigRules request structure.
1493
+
1494
+ """
1495
+
1496
+ def __init__(self):
1497
+ r"""
1498
+ :param _Limit: Page limit
1499
+ :type Limit: int
1500
+ :param _Offset: Offset.
1501
+ :type Offset: int
1502
+ :param _OrderType: Sort type. Descending: desc, Ascending: asc.
1503
+ :type OrderType: str
1504
+ :param _RiskLevel: Risk level
1505
+
1506
+ 1: High risk.
1507
+ 2: Medium risk.
1508
+ 3: Low risk.
1509
+ :type RiskLevel: list of int non-negative
1510
+ :param _State: Rule status
1511
+ :type State: str
1512
+ :param _ComplianceResult: Evaluation result
1513
+ :type ComplianceResult: list of str
1514
+ :param _RuleName: Name of the rule
1515
+ :type RuleName: str
1516
+ """
1517
+ self._Limit = None
1518
+ self._Offset = None
1519
+ self._OrderType = None
1520
+ self._RiskLevel = None
1521
+ self._State = None
1522
+ self._ComplianceResult = None
1523
+ self._RuleName = None
1524
+
1525
+ @property
1526
+ def Limit(self):
1527
+ """Page limit
1528
+ :rtype: int
1529
+ """
1530
+ return self._Limit
1531
+
1532
+ @Limit.setter
1533
+ def Limit(self, Limit):
1534
+ self._Limit = Limit
1535
+
1536
+ @property
1537
+ def Offset(self):
1538
+ """Offset.
1539
+ :rtype: int
1540
+ """
1541
+ return self._Offset
1542
+
1543
+ @Offset.setter
1544
+ def Offset(self, Offset):
1545
+ self._Offset = Offset
1546
+
1547
+ @property
1548
+ def OrderType(self):
1549
+ """Sort type. Descending: desc, Ascending: asc.
1550
+ :rtype: str
1551
+ """
1552
+ return self._OrderType
1553
+
1554
+ @OrderType.setter
1555
+ def OrderType(self, OrderType):
1556
+ self._OrderType = OrderType
1557
+
1558
+ @property
1559
+ def RiskLevel(self):
1560
+ """Risk level
1561
+
1562
+ 1: High risk.
1563
+ 2: Medium risk.
1564
+ 3: Low risk.
1565
+ :rtype: list of int non-negative
1566
+ """
1567
+ return self._RiskLevel
1568
+
1569
+ @RiskLevel.setter
1570
+ def RiskLevel(self, RiskLevel):
1571
+ self._RiskLevel = RiskLevel
1572
+
1573
+ @property
1574
+ def State(self):
1575
+ """Rule status
1576
+ :rtype: str
1577
+ """
1578
+ return self._State
1579
+
1580
+ @State.setter
1581
+ def State(self, State):
1582
+ self._State = State
1583
+
1584
+ @property
1585
+ def ComplianceResult(self):
1586
+ """Evaluation result
1587
+ :rtype: list of str
1588
+ """
1589
+ return self._ComplianceResult
1590
+
1591
+ @ComplianceResult.setter
1592
+ def ComplianceResult(self, ComplianceResult):
1593
+ self._ComplianceResult = ComplianceResult
1594
+
1595
+ @property
1596
+ def RuleName(self):
1597
+ """Name of the rule
1598
+ :rtype: str
1599
+ """
1600
+ return self._RuleName
1601
+
1602
+ @RuleName.setter
1603
+ def RuleName(self, RuleName):
1604
+ self._RuleName = RuleName
1605
+
1606
+
1607
+ def _deserialize(self, params):
1608
+ self._Limit = params.get("Limit")
1609
+ self._Offset = params.get("Offset")
1610
+ self._OrderType = params.get("OrderType")
1611
+ self._RiskLevel = params.get("RiskLevel")
1612
+ self._State = params.get("State")
1613
+ self._ComplianceResult = params.get("ComplianceResult")
1614
+ self._RuleName = params.get("RuleName")
1615
+ memeber_set = set(params.keys())
1616
+ for name, value in vars(self).items():
1617
+ property_name = name[1:]
1618
+ if property_name in memeber_set:
1619
+ memeber_set.remove(property_name)
1620
+ if len(memeber_set) > 0:
1621
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
1622
+
1623
+
1624
+
1625
+ class ListConfigRulesResponse(AbstractModel):
1626
+ """ListConfigRules response structure.
1627
+
1628
+ """
1629
+
1630
+ def __init__(self):
1631
+ r"""
1632
+ :param _Total: Total number
1633
+ :type Total: int
1634
+ :param _Items: Details
1635
+ :type Items: list of ConfigRule
1636
+ :param _RequestId: The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
1637
+ :type RequestId: str
1638
+ """
1639
+ self._Total = None
1640
+ self._Items = None
1641
+ self._RequestId = None
1642
+
1643
+ @property
1644
+ def Total(self):
1645
+ """Total number
1646
+ :rtype: int
1647
+ """
1648
+ return self._Total
1649
+
1650
+ @Total.setter
1651
+ def Total(self, Total):
1652
+ self._Total = Total
1653
+
1654
+ @property
1655
+ def Items(self):
1656
+ """Details
1657
+ :rtype: list of ConfigRule
1658
+ """
1659
+ return self._Items
1660
+
1661
+ @Items.setter
1662
+ def Items(self, Items):
1663
+ self._Items = Items
1664
+
1665
+ @property
1666
+ def RequestId(self):
1667
+ """The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
1668
+ :rtype: str
1669
+ """
1670
+ return self._RequestId
1671
+
1672
+ @RequestId.setter
1673
+ def RequestId(self, RequestId):
1674
+ self._RequestId = RequestId
1675
+
1676
+
1677
+ def _deserialize(self, params):
1678
+ self._Total = params.get("Total")
1679
+ if params.get("Items") is not None:
1680
+ self._Items = []
1681
+ for item in params.get("Items"):
1682
+ obj = ConfigRule()
1683
+ obj._deserialize(item)
1684
+ self._Items.append(obj)
1685
+ self._RequestId = params.get("RequestId")
1686
+
1687
+
1688
+ class ListDiscoveredResourcesRequest(AbstractModel):
1689
+ """ListDiscoveredResources request structure.
1690
+
1691
+ """
1692
+
1693
+ def __init__(self):
1694
+ r"""
1695
+ :param _MaxResults: Items per Page
1696
+ :type MaxResults: int
1697
+ :param _Filters: resourceName: Resource name resourceId: Resource ID
1698
+ :type Filters: list of Filter
1699
+ :param _Tags: Tag
1700
+ :type Tags: list of Tag
1701
+ :param _NextToken: Next page token.
1702
+ :type NextToken: str
1703
+ :param _OrderType: Sorting method asc, desc
1704
+ :type OrderType: str
1705
+ """
1706
+ self._MaxResults = None
1707
+ self._Filters = None
1708
+ self._Tags = None
1709
+ self._NextToken = None
1710
+ self._OrderType = None
1711
+
1712
+ @property
1713
+ def MaxResults(self):
1714
+ """Items per Page
1715
+ :rtype: int
1716
+ """
1717
+ return self._MaxResults
1718
+
1719
+ @MaxResults.setter
1720
+ def MaxResults(self, MaxResults):
1721
+ self._MaxResults = MaxResults
1722
+
1723
+ @property
1724
+ def Filters(self):
1725
+ """resourceName: Resource name resourceId: Resource ID
1726
+ :rtype: list of Filter
1727
+ """
1728
+ return self._Filters
1729
+
1730
+ @Filters.setter
1731
+ def Filters(self, Filters):
1732
+ self._Filters = Filters
1733
+
1734
+ @property
1735
+ def Tags(self):
1736
+ """Tag
1737
+ :rtype: list of Tag
1738
+ """
1739
+ return self._Tags
1740
+
1741
+ @Tags.setter
1742
+ def Tags(self, Tags):
1743
+ self._Tags = Tags
1744
+
1745
+ @property
1746
+ def NextToken(self):
1747
+ """Next page token.
1748
+ :rtype: str
1749
+ """
1750
+ return self._NextToken
1751
+
1752
+ @NextToken.setter
1753
+ def NextToken(self, NextToken):
1754
+ self._NextToken = NextToken
1755
+
1756
+ @property
1757
+ def OrderType(self):
1758
+ """Sorting method asc, desc
1759
+ :rtype: str
1760
+ """
1761
+ return self._OrderType
1762
+
1763
+ @OrderType.setter
1764
+ def OrderType(self, OrderType):
1765
+ self._OrderType = OrderType
1766
+
1767
+
1768
+ def _deserialize(self, params):
1769
+ self._MaxResults = params.get("MaxResults")
1770
+ if params.get("Filters") is not None:
1771
+ self._Filters = []
1772
+ for item in params.get("Filters"):
1773
+ obj = Filter()
1774
+ obj._deserialize(item)
1775
+ self._Filters.append(obj)
1776
+ if params.get("Tags") is not None:
1777
+ self._Tags = []
1778
+ for item in params.get("Tags"):
1779
+ obj = Tag()
1780
+ obj._deserialize(item)
1781
+ self._Tags.append(obj)
1782
+ self._NextToken = params.get("NextToken")
1783
+ self._OrderType = params.get("OrderType")
1784
+ memeber_set = set(params.keys())
1785
+ for name, value in vars(self).items():
1786
+ property_name = name[1:]
1787
+ if property_name in memeber_set:
1788
+ memeber_set.remove(property_name)
1789
+ if len(memeber_set) > 0:
1790
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
1791
+
1792
+
1793
+
1794
+ class ListDiscoveredResourcesResponse(AbstractModel):
1795
+ """ListDiscoveredResources response structure.
1796
+
1797
+ """
1798
+
1799
+ def __init__(self):
1800
+ r"""
1801
+ :param _Items: Details
1802
+ :type Items: list of ResourceListInfo
1803
+ :param _NextToken: Next page
1804
+ Note: This field may return null, indicating that no valid value is found.
1805
+ :type NextToken: str
1806
+ :param _RequestId: The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
1807
+ :type RequestId: str
1808
+ """
1809
+ self._Items = None
1810
+ self._NextToken = None
1811
+ self._RequestId = None
1812
+
1813
+ @property
1814
+ def Items(self):
1815
+ """Details
1816
+ :rtype: list of ResourceListInfo
1817
+ """
1818
+ return self._Items
1819
+
1820
+ @Items.setter
1821
+ def Items(self, Items):
1822
+ self._Items = Items
1823
+
1824
+ @property
1825
+ def NextToken(self):
1826
+ """Next page
1827
+ Note: This field may return null, indicating that no valid value is found.
1828
+ :rtype: str
1829
+ """
1830
+ return self._NextToken
1831
+
1832
+ @NextToken.setter
1833
+ def NextToken(self, NextToken):
1834
+ self._NextToken = NextToken
1835
+
1836
+ @property
1837
+ def RequestId(self):
1838
+ """The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
1839
+ :rtype: str
1840
+ """
1841
+ return self._RequestId
1842
+
1843
+ @RequestId.setter
1844
+ def RequestId(self, RequestId):
1845
+ self._RequestId = RequestId
1846
+
1847
+
1848
+ def _deserialize(self, params):
1849
+ if params.get("Items") is not None:
1850
+ self._Items = []
1851
+ for item in params.get("Items"):
1852
+ obj = ResourceListInfo()
1853
+ obj._deserialize(item)
1854
+ self._Items.append(obj)
1855
+ self._NextToken = params.get("NextToken")
1856
+ self._RequestId = params.get("RequestId")
1857
+
1858
+
1859
+ class PutEvaluationsRequest(AbstractModel):
1860
+ """PutEvaluations request structure.
1861
+
1862
+ """
1863
+
1864
+ def __init__(self):
1865
+ r"""
1866
+ :param _ResultToken: Callback token. Obtained from the ResultToken value in the Context of the selected Serverless Cloud Function (SCF) for the custom rule.
1867
+ :type ResultToken: str
1868
+ :param _Evaluations: Custom rule evaluation result information.
1869
+ :type Evaluations: list of Evaluation
1870
+ """
1871
+ self._ResultToken = None
1872
+ self._Evaluations = None
1873
+
1874
+ @property
1875
+ def ResultToken(self):
1876
+ """Callback token. Obtained from the ResultToken value in the Context of the selected Serverless Cloud Function (SCF) for the custom rule.
1877
+ :rtype: str
1878
+ """
1879
+ return self._ResultToken
1880
+
1881
+ @ResultToken.setter
1882
+ def ResultToken(self, ResultToken):
1883
+ self._ResultToken = ResultToken
1884
+
1885
+ @property
1886
+ def Evaluations(self):
1887
+ """Custom rule evaluation result information.
1888
+ :rtype: list of Evaluation
1889
+ """
1890
+ return self._Evaluations
1891
+
1892
+ @Evaluations.setter
1893
+ def Evaluations(self, Evaluations):
1894
+ self._Evaluations = Evaluations
1895
+
1896
+
1897
+ def _deserialize(self, params):
1898
+ self._ResultToken = params.get("ResultToken")
1899
+ if params.get("Evaluations") is not None:
1900
+ self._Evaluations = []
1901
+ for item in params.get("Evaluations"):
1902
+ obj = Evaluation()
1903
+ obj._deserialize(item)
1904
+ self._Evaluations.append(obj)
1905
+ memeber_set = set(params.keys())
1906
+ for name, value in vars(self).items():
1907
+ property_name = name[1:]
1908
+ if property_name in memeber_set:
1909
+ memeber_set.remove(property_name)
1910
+ if len(memeber_set) > 0:
1911
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
1912
+
1913
+
1914
+
1915
+ class PutEvaluationsResponse(AbstractModel):
1916
+ """PutEvaluations response structure.
1917
+
1918
+ """
1919
+
1920
+ def __init__(self):
1921
+ r"""
1922
+ :param _RequestId: The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
1923
+ :type RequestId: str
1924
+ """
1925
+ self._RequestId = None
1926
+
1927
+ @property
1928
+ def RequestId(self):
1929
+ """The unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
1930
+ :rtype: str
1931
+ """
1932
+ return self._RequestId
1933
+
1934
+ @RequestId.setter
1935
+ def RequestId(self, RequestId):
1936
+ self._RequestId = RequestId
1937
+
1938
+
1939
+ def _deserialize(self, params):
1940
+ self._RequestId = params.get("RequestId")
1941
+
1942
+
1943
+ class ResourceListInfo(AbstractModel):
1944
+ """Resource list information response parameters structure
1945
+
1946
+ """
1947
+
1948
+ def __init__(self):
1949
+ r"""
1950
+ :param _ResourceType: Resource type
1951
+ :type ResourceType: str
1952
+ :param _ResourceName: Resource name
1953
+ :type ResourceName: str
1954
+ :param _ResourceId: Resource ID
1955
+ :type ResourceId: str
1956
+ :param _ResourceRegion: Region
1957
+
1958
+ Note: This field may return null, indicating that no valid value is found.
1959
+ :type ResourceRegion: str
1960
+ :param _ResourceStatus: Resource Status
1961
+
1962
+ Note: This field may return null, indicating that no valid value is found.
1963
+ :type ResourceStatus: str
1964
+ :param _ResourceDelete: 1: Deleted. 2: Not deleted.
1965
+ Note: This field may return null, indicating that no valid value is found.
1966
+ :type ResourceDelete: int
1967
+ :param _ResourceCreateTime: Resource creation time
1968
+
1969
+ Note: This field may return null, indicating that no valid value is found.
1970
+ :type ResourceCreateTime: str
1971
+ :param _Tags: Tag information
1972
+
1973
+ Note: This field may return null, indicating that no valid value is found.
1974
+ :type Tags: list of Tag
1975
+ :param _ResourceZone: Availability zone
1976
+
1977
+ Note: This field may return null, indicating that no valid value is found.
1978
+ :type ResourceZone: str
1979
+ :param _ComplianceResult: Compliance status.
1980
+ Note: This field may return null, indicating that no valid value is found.
1981
+ :type ComplianceResult: str
1982
+ """
1983
+ self._ResourceType = None
1984
+ self._ResourceName = None
1985
+ self._ResourceId = None
1986
+ self._ResourceRegion = None
1987
+ self._ResourceStatus = None
1988
+ self._ResourceDelete = None
1989
+ self._ResourceCreateTime = None
1990
+ self._Tags = None
1991
+ self._ResourceZone = None
1992
+ self._ComplianceResult = None
1993
+
1994
+ @property
1995
+ def ResourceType(self):
1996
+ """Resource type
1997
+ :rtype: str
1998
+ """
1999
+ return self._ResourceType
2000
+
2001
+ @ResourceType.setter
2002
+ def ResourceType(self, ResourceType):
2003
+ self._ResourceType = ResourceType
2004
+
2005
+ @property
2006
+ def ResourceName(self):
2007
+ """Resource name
2008
+ :rtype: str
2009
+ """
2010
+ return self._ResourceName
2011
+
2012
+ @ResourceName.setter
2013
+ def ResourceName(self, ResourceName):
2014
+ self._ResourceName = ResourceName
2015
+
2016
+ @property
2017
+ def ResourceId(self):
2018
+ """Resource ID
2019
+ :rtype: str
2020
+ """
2021
+ return self._ResourceId
2022
+
2023
+ @ResourceId.setter
2024
+ def ResourceId(self, ResourceId):
2025
+ self._ResourceId = ResourceId
2026
+
2027
+ @property
2028
+ def ResourceRegion(self):
2029
+ """Region
2030
+
2031
+ Note: This field may return null, indicating that no valid value is found.
2032
+ :rtype: str
2033
+ """
2034
+ return self._ResourceRegion
2035
+
2036
+ @ResourceRegion.setter
2037
+ def ResourceRegion(self, ResourceRegion):
2038
+ self._ResourceRegion = ResourceRegion
2039
+
2040
+ @property
2041
+ def ResourceStatus(self):
2042
+ """Resource Status
2043
+
2044
+ Note: This field may return null, indicating that no valid value is found.
2045
+ :rtype: str
2046
+ """
2047
+ return self._ResourceStatus
2048
+
2049
+ @ResourceStatus.setter
2050
+ def ResourceStatus(self, ResourceStatus):
2051
+ self._ResourceStatus = ResourceStatus
2052
+
2053
+ @property
2054
+ def ResourceDelete(self):
2055
+ """1: Deleted. 2: Not deleted.
2056
+ Note: This field may return null, indicating that no valid value is found.
2057
+ :rtype: int
2058
+ """
2059
+ return self._ResourceDelete
2060
+
2061
+ @ResourceDelete.setter
2062
+ def ResourceDelete(self, ResourceDelete):
2063
+ self._ResourceDelete = ResourceDelete
2064
+
2065
+ @property
2066
+ def ResourceCreateTime(self):
2067
+ """Resource creation time
2068
+
2069
+ Note: This field may return null, indicating that no valid value is found.
2070
+ :rtype: str
2071
+ """
2072
+ return self._ResourceCreateTime
2073
+
2074
+ @ResourceCreateTime.setter
2075
+ def ResourceCreateTime(self, ResourceCreateTime):
2076
+ self._ResourceCreateTime = ResourceCreateTime
2077
+
2078
+ @property
2079
+ def Tags(self):
2080
+ """Tag information
2081
+
2082
+ Note: This field may return null, indicating that no valid value is found.
2083
+ :rtype: list of Tag
2084
+ """
2085
+ return self._Tags
2086
+
2087
+ @Tags.setter
2088
+ def Tags(self, Tags):
2089
+ self._Tags = Tags
2090
+
2091
+ @property
2092
+ def ResourceZone(self):
2093
+ """Availability zone
2094
+
2095
+ Note: This field may return null, indicating that no valid value is found.
2096
+ :rtype: str
2097
+ """
2098
+ return self._ResourceZone
2099
+
2100
+ @ResourceZone.setter
2101
+ def ResourceZone(self, ResourceZone):
2102
+ self._ResourceZone = ResourceZone
2103
+
2104
+ @property
2105
+ def ComplianceResult(self):
2106
+ """Compliance status.
2107
+ Note: This field may return null, indicating that no valid value is found.
2108
+ :rtype: str
2109
+ """
2110
+ return self._ComplianceResult
2111
+
2112
+ @ComplianceResult.setter
2113
+ def ComplianceResult(self, ComplianceResult):
2114
+ self._ComplianceResult = ComplianceResult
2115
+
2116
+
2117
+ def _deserialize(self, params):
2118
+ self._ResourceType = params.get("ResourceType")
2119
+ self._ResourceName = params.get("ResourceName")
2120
+ self._ResourceId = params.get("ResourceId")
2121
+ self._ResourceRegion = params.get("ResourceRegion")
2122
+ self._ResourceStatus = params.get("ResourceStatus")
2123
+ self._ResourceDelete = params.get("ResourceDelete")
2124
+ self._ResourceCreateTime = params.get("ResourceCreateTime")
2125
+ if params.get("Tags") is not None:
2126
+ self._Tags = []
2127
+ for item in params.get("Tags"):
2128
+ obj = Tag()
2129
+ obj._deserialize(item)
2130
+ self._Tags.append(obj)
2131
+ self._ResourceZone = params.get("ResourceZone")
2132
+ self._ComplianceResult = params.get("ComplianceResult")
2133
+ memeber_set = set(params.keys())
2134
+ for name, value in vars(self).items():
2135
+ property_name = name[1:]
2136
+ if property_name in memeber_set:
2137
+ memeber_set.remove(property_name)
2138
+ if len(memeber_set) > 0:
2139
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
2140
+
2141
+
2142
+
2143
+ class SourceConditionForManage(AbstractModel):
2144
+ """Managing end rule conditions
2145
+
2146
+ """
2147
+
2148
+ def __init__(self):
2149
+ r"""
2150
+ :param _EmptyAs: Condition is empty, Compliant: COMPLIANT, Non-compliant: NON_COMPLIANT, Not applicable: NOT_APPLICABLE.
2151
+ Note: This field may return null, indicating that no valid value is found.
2152
+ :type EmptyAs: str
2153
+ :param _SelectPath: Configuration path
2154
+
2155
+ Note: This field may return null, indicating that no valid value is found.
2156
+ :type SelectPath: str
2157
+ :param _Operator: Operators
2158
+ Note: This field may return null, indicating that no valid value is found.
2159
+ :type Operator: str
2160
+ :param _Required: Required or not.
2161
+
2162
+ Note: This field may return null, indicating that no valid value is found.
2163
+ :type Required: bool
2164
+ :param _DesiredValue: Expected value
2165
+ Note: This field may return null, indicating that no valid value is found.
2166
+ :type DesiredValue: str
2167
+ """
2168
+ self._EmptyAs = None
2169
+ self._SelectPath = None
2170
+ self._Operator = None
2171
+ self._Required = None
2172
+ self._DesiredValue = None
2173
+
2174
+ @property
2175
+ def EmptyAs(self):
2176
+ """Condition is empty, Compliant: COMPLIANT, Non-compliant: NON_COMPLIANT, Not applicable: NOT_APPLICABLE.
2177
+ Note: This field may return null, indicating that no valid value is found.
2178
+ :rtype: str
2179
+ """
2180
+ return self._EmptyAs
2181
+
2182
+ @EmptyAs.setter
2183
+ def EmptyAs(self, EmptyAs):
2184
+ self._EmptyAs = EmptyAs
2185
+
2186
+ @property
2187
+ def SelectPath(self):
2188
+ """Configuration path
2189
+
2190
+ Note: This field may return null, indicating that no valid value is found.
2191
+ :rtype: str
2192
+ """
2193
+ return self._SelectPath
2194
+
2195
+ @SelectPath.setter
2196
+ def SelectPath(self, SelectPath):
2197
+ self._SelectPath = SelectPath
2198
+
2199
+ @property
2200
+ def Operator(self):
2201
+ """Operators
2202
+ Note: This field may return null, indicating that no valid value is found.
2203
+ :rtype: str
2204
+ """
2205
+ return self._Operator
2206
+
2207
+ @Operator.setter
2208
+ def Operator(self, Operator):
2209
+ self._Operator = Operator
2210
+
2211
+ @property
2212
+ def Required(self):
2213
+ """Required or not.
2214
+
2215
+ Note: This field may return null, indicating that no valid value is found.
2216
+ :rtype: bool
2217
+ """
2218
+ return self._Required
2219
+
2220
+ @Required.setter
2221
+ def Required(self, Required):
2222
+ self._Required = Required
2223
+
2224
+ @property
2225
+ def DesiredValue(self):
2226
+ """Expected value
2227
+ Note: This field may return null, indicating that no valid value is found.
2228
+ :rtype: str
2229
+ """
2230
+ return self._DesiredValue
2231
+
2232
+ @DesiredValue.setter
2233
+ def DesiredValue(self, DesiredValue):
2234
+ self._DesiredValue = DesiredValue
2235
+
2236
+
2237
+ def _deserialize(self, params):
2238
+ self._EmptyAs = params.get("EmptyAs")
2239
+ self._SelectPath = params.get("SelectPath")
2240
+ self._Operator = params.get("Operator")
2241
+ self._Required = params.get("Required")
2242
+ self._DesiredValue = params.get("DesiredValue")
2243
+ memeber_set = set(params.keys())
2244
+ for name, value in vars(self).items():
2245
+ property_name = name[1:]
2246
+ if property_name in memeber_set:
2247
+ memeber_set.remove(property_name)
2248
+ if len(memeber_set) > 0:
2249
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
2250
+
2251
+
2252
+
2253
+ class Tag(AbstractModel):
2254
+ """Tag
2255
+
2256
+ """
2257
+
2258
+ def __init__(self):
2259
+ r"""
2260
+ :param _TagKey: Tag key
2261
+
2262
+ Note: This field may return null, indicating that no valid value is found.
2263
+ :type TagKey: str
2264
+ :param _TagValue: Tag value
2265
+
2266
+ Note: This field may return null, indicating that no valid value is found.
2267
+ :type TagValue: str
2268
+ """
2269
+ self._TagKey = None
2270
+ self._TagValue = None
2271
+
2272
+ @property
2273
+ def TagKey(self):
2274
+ """Tag key
2275
+
2276
+ Note: This field may return null, indicating that no valid value is found.
2277
+ :rtype: str
2278
+ """
2279
+ return self._TagKey
2280
+
2281
+ @TagKey.setter
2282
+ def TagKey(self, TagKey):
2283
+ self._TagKey = TagKey
2284
+
2285
+ @property
2286
+ def TagValue(self):
2287
+ """Tag value
2288
+
2289
+ Note: This field may return null, indicating that no valid value is found.
2290
+ :rtype: str
2291
+ """
2292
+ return self._TagValue
2293
+
2294
+ @TagValue.setter
2295
+ def TagValue(self, TagValue):
2296
+ self._TagValue = TagValue
2297
+
2298
+
2299
+ def _deserialize(self, params):
2300
+ self._TagKey = params.get("TagKey")
2301
+ self._TagValue = params.get("TagValue")
2302
+ memeber_set = set(params.keys())
2303
+ for name, value in vars(self).items():
2304
+ property_name = name[1:]
2305
+ if property_name in memeber_set:
2306
+ memeber_set.remove(property_name)
2307
+ if len(memeber_set) > 0:
2308
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
2309
+
2310
+
2311
+
2312
+ class TriggerType(AbstractModel):
2313
+ """Rule supports trigger type
2314
+
2315
+ """
2316
+
2317
+ def __init__(self):
2318
+ r"""
2319
+ :param _MessageType: Trigger Type
2320
+ :type MessageType: str
2321
+ :param _MaximumExecutionFrequency: Trigger time period
2322
+ Note: This field may return null, indicating that no valid value is found.
2323
+ :type MaximumExecutionFrequency: str
2324
+ """
2325
+ self._MessageType = None
2326
+ self._MaximumExecutionFrequency = None
2327
+
2328
+ @property
2329
+ def MessageType(self):
2330
+ """Trigger Type
2331
+ :rtype: str
2332
+ """
2333
+ return self._MessageType
2334
+
2335
+ @MessageType.setter
2336
+ def MessageType(self, MessageType):
2337
+ self._MessageType = MessageType
2338
+
2339
+ @property
2340
+ def MaximumExecutionFrequency(self):
2341
+ """Trigger time period
2342
+ Note: This field may return null, indicating that no valid value is found.
2343
+ :rtype: str
2344
+ """
2345
+ return self._MaximumExecutionFrequency
2346
+
2347
+ @MaximumExecutionFrequency.setter
2348
+ def MaximumExecutionFrequency(self, MaximumExecutionFrequency):
2349
+ self._MaximumExecutionFrequency = MaximumExecutionFrequency
2350
+
2351
+
2352
+ def _deserialize(self, params):
2353
+ self._MessageType = params.get("MessageType")
2354
+ self._MaximumExecutionFrequency = params.get("MaximumExecutionFrequency")
2355
+ memeber_set = set(params.keys())
2356
+ for name, value in vars(self).items():
2357
+ property_name = name[1:]
2358
+ if property_name in memeber_set:
2359
+ memeber_set.remove(property_name)
2360
+ if len(memeber_set) > 0:
2361
+ warnings.warn("%s fileds are useless." % ",".join(memeber_set))
2362
+