aws-cdk-lib 2.168.0__py3-none-any.whl → 2.169.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 aws-cdk-lib might be problematic. Click here for more details.

Files changed (37) hide show
  1. aws_cdk/__init__.py +2 -0
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.168.0.jsii.tgz → aws-cdk-lib@2.169.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_accessanalyzer/__init__.py +244 -13
  5. aws_cdk/aws_applicationsignals/__init__.py +8 -1
  6. aws_cdk/aws_autoscaling/__init__.py +310 -9
  7. aws_cdk/aws_cloudfront/__init__.py +50 -0
  8. aws_cdk/aws_codebuild/__init__.py +2 -2
  9. aws_cdk/aws_connect/__init__.py +378 -0
  10. aws_cdk/aws_customerprofiles/__init__.py +44 -0
  11. aws_cdk/aws_deadline/__init__.py +299 -6
  12. aws_cdk/aws_dynamodb/__init__.py +47 -25
  13. aws_cdk/aws_ec2/__init__.py +6 -2
  14. aws_cdk/aws_ecs/__init__.py +28 -22
  15. aws_cdk/aws_efs/__init__.py +61 -4
  16. aws_cdk/aws_eks/__init__.py +116 -0
  17. aws_cdk/aws_gamelift/__init__.py +385 -251
  18. aws_cdk/aws_iot/__init__.py +209 -0
  19. aws_cdk/aws_iotfleetwise/__init__.py +550 -0
  20. aws_cdk/aws_iotsitewise/__init__.py +6 -3
  21. aws_cdk/aws_ivs/__init__.py +458 -0
  22. aws_cdk/aws_kinesisfirehose/__init__.py +90 -33
  23. aws_cdk/aws_rbin/__init__.py +902 -0
  24. aws_cdk/aws_rds/__init__.py +115 -0
  25. aws_cdk/aws_route53resolver/__init__.py +76 -19
  26. aws_cdk/aws_sagemaker/__init__.py +32 -0
  27. aws_cdk/aws_sns/__init__.py +593 -8
  28. aws_cdk/aws_sns_subscriptions/__init__.py +68 -22
  29. aws_cdk/aws_synthetics/__init__.py +46 -0
  30. aws_cdk/aws_vpclattice/__init__.py +118 -2
  31. aws_cdk/aws_wisdom/__init__.py +16 -21
  32. {aws_cdk_lib-2.168.0.dist-info → aws_cdk_lib-2.169.0.dist-info}/METADATA +1 -1
  33. {aws_cdk_lib-2.168.0.dist-info → aws_cdk_lib-2.169.0.dist-info}/RECORD +37 -36
  34. {aws_cdk_lib-2.168.0.dist-info → aws_cdk_lib-2.169.0.dist-info}/LICENSE +0 -0
  35. {aws_cdk_lib-2.168.0.dist-info → aws_cdk_lib-2.169.0.dist-info}/NOTICE +0 -0
  36. {aws_cdk_lib-2.168.0.dist-info → aws_cdk_lib-2.169.0.dist-info}/WHEEL +0 -0
  37. {aws_cdk_lib-2.168.0.dist-info → aws_cdk_lib-2.169.0.dist-info}/top_level.txt +0 -0
aws_cdk/__init__.py CHANGED
@@ -36069,6 +36069,7 @@ __all__ = [
36069
36069
  "aws_qldb",
36070
36070
  "aws_quicksight",
36071
36071
  "aws_ram",
36072
+ "aws_rbin",
36072
36073
  "aws_rds",
36073
36074
  "aws_redshift",
36074
36075
  "aws_redshiftserverless",
@@ -36358,6 +36359,7 @@ from . import aws_qbusiness
36358
36359
  from . import aws_qldb
36359
36360
  from . import aws_quicksight
36360
36361
  from . import aws_ram
36362
+ from . import aws_rbin
36361
36363
  from . import aws_rds
36362
36364
  from . import aws_redshift
36363
36365
  from . import aws_redshiftserverless
aws_cdk/_jsii/__init__.py CHANGED
@@ -35,7 +35,7 @@ import aws_cdk.cloud_assembly_schema._jsii
35
35
  import constructs._jsii
36
36
 
37
37
  __jsii_assembly__ = jsii.JSIIAssembly.load(
38
- "aws-cdk-lib", "2.168.0", __name__[0:-6], "aws-cdk-lib@2.168.0.jsii.tgz"
38
+ "aws-cdk-lib", "2.169.0", __name__[0:-6], "aws-cdk-lib@2.169.0.jsii.tgz"
39
39
  )
40
40
 
41
41
  __all__ = [
@@ -95,6 +95,15 @@ class CfnAnalyzer(
95
95
  # the properties below are optional
96
96
  analyzer_configuration=accessanalyzer.CfnAnalyzer.AnalyzerConfigurationProperty(
97
97
  unused_access_configuration=accessanalyzer.CfnAnalyzer.UnusedAccessConfigurationProperty(
98
+ analysis_rule=accessanalyzer.CfnAnalyzer.AnalysisRuleProperty(
99
+ exclusions=[accessanalyzer.CfnAnalyzer.AnalysisRuleCriteriaProperty(
100
+ account_ids=["accountIds"],
101
+ resource_tags=[[CfnTag(
102
+ key="key",
103
+ value="value"
104
+ )]]
105
+ )]
106
+ ),
98
107
  unused_access_age=123
99
108
  )
100
109
  ),
@@ -133,10 +142,10 @@ class CfnAnalyzer(
133
142
  :param scope: Scope in which this resource is defined.
134
143
  :param id: Construct identifier for this resource (unique in its scope).
135
144
  :param type: The type represents the zone of trust for the analyzer. *Allowed Values* : ACCOUNT | ORGANIZATION | ACCOUNT_UNUSED_ACCESS | ORGANIZATION_UNUSED_ACCESS
136
- :param analyzer_configuration: Contains information about the configuration of an unused access analyzer for an AWS organization or account.
145
+ :param analyzer_configuration: Contains information about the configuration of an analyzer for an AWS organization or account.
137
146
  :param analyzer_name: The name of the analyzer.
138
147
  :param archive_rules: Specifies the archive rules to add for the analyzer. Archive rules automatically archive findings that meet the criteria you define for the rule.
139
- :param tags: An array of key-value pairs to apply to the analyzer.
148
+ :param tags: An array of key-value pairs to apply to the analyzer. You can use the set of Unicode letters, digits, whitespace, ``_`` , ``.`` , ``/`` , ``=`` , ``+`` , and ``-`` . For the tag key, you can specify a value that is 1 to 128 characters in length and cannot be prefixed with ``aws:`` . For the tag value, you can specify a value that is 0 to 256 characters in length.
140
149
  '''
141
150
  if __debug__:
142
151
  type_hints = typing.get_type_hints(_typecheckingstub__4d078d0b17e4dff80691cd25737bc9c648722f68955725da002d3ab5d4df9b21)
@@ -220,7 +229,7 @@ class CfnAnalyzer(
220
229
  def analyzer_configuration(
221
230
  self,
222
231
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnAnalyzer.AnalyzerConfigurationProperty"]]:
223
- '''Contains information about the configuration of an unused access analyzer for an AWS organization or account.'''
232
+ '''Contains information about the configuration of an analyzer for an AWS organization or account.'''
224
233
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnAnalyzer.AnalyzerConfigurationProperty"]], jsii.get(self, "analyzerConfiguration"))
225
234
 
226
235
  @analyzer_configuration.setter
@@ -277,6 +286,158 @@ class CfnAnalyzer(
277
286
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
278
287
  jsii.set(self, "tagsRaw", value) # pyright: ignore[reportArgumentType]
279
288
 
289
+ @jsii.data_type(
290
+ jsii_type="aws-cdk-lib.aws_accessanalyzer.CfnAnalyzer.AnalysisRuleCriteriaProperty",
291
+ jsii_struct_bases=[],
292
+ name_mapping={"account_ids": "accountIds", "resource_tags": "resourceTags"},
293
+ )
294
+ class AnalysisRuleCriteriaProperty:
295
+ def __init__(
296
+ self,
297
+ *,
298
+ account_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
299
+ resource_tags: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]]]]]] = None,
300
+ ) -> None:
301
+ '''The criteria for an analysis rule for an analyzer.
302
+
303
+ The criteria determine which entities will generate findings.
304
+
305
+ :param account_ids: A list of AWS account IDs to apply to the analysis rule criteria. The accounts cannot include the organization analyzer owner account. Account IDs can only be applied to the analysis rule criteria for organization-level analyzers. The list cannot include more than 2,000 account IDs.
306
+ :param resource_tags: An array of key-value pairs to match for your resources. You can use the set of Unicode letters, digits, whitespace, ``_`` , ``.`` , ``/`` , ``=`` , ``+`` , and ``-`` . For the tag key, you can specify a value that is 1 to 128 characters in length and cannot be prefixed with ``aws:`` . For the tag value, you can specify a value that is 0 to 256 characters in length. If the specified tag value is 0 characters, the rule is applied to all principals with the specified tag key.
307
+
308
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-analysisrulecriteria.html
309
+ :exampleMetadata: fixture=_generated
310
+
311
+ Example::
312
+
313
+ # The code below shows an example of how to instantiate this type.
314
+ # The values are placeholders you should change.
315
+ from aws_cdk import aws_accessanalyzer as accessanalyzer
316
+
317
+ analysis_rule_criteria_property = accessanalyzer.CfnAnalyzer.AnalysisRuleCriteriaProperty(
318
+ account_ids=["accountIds"],
319
+ resource_tags=[[CfnTag(
320
+ key="key",
321
+ value="value"
322
+ )]]
323
+ )
324
+ '''
325
+ if __debug__:
326
+ type_hints = typing.get_type_hints(_typecheckingstub__36c3b122854545155d3943e2cf1f8f001f347b0db4e3b0e61e5562d5c4418440)
327
+ check_type(argname="argument account_ids", value=account_ids, expected_type=type_hints["account_ids"])
328
+ check_type(argname="argument resource_tags", value=resource_tags, expected_type=type_hints["resource_tags"])
329
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
330
+ if account_ids is not None:
331
+ self._values["account_ids"] = account_ids
332
+ if resource_tags is not None:
333
+ self._values["resource_tags"] = resource_tags
334
+
335
+ @builtins.property
336
+ def account_ids(self) -> typing.Optional[typing.List[builtins.str]]:
337
+ '''A list of AWS account IDs to apply to the analysis rule criteria.
338
+
339
+ The accounts cannot include the organization analyzer owner account. Account IDs can only be applied to the analysis rule criteria for organization-level analyzers. The list cannot include more than 2,000 account IDs.
340
+
341
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-analysisrulecriteria.html#cfn-accessanalyzer-analyzer-analysisrulecriteria-accountids
342
+ '''
343
+ result = self._values.get("account_ids")
344
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
345
+
346
+ @builtins.property
347
+ def resource_tags(
348
+ self,
349
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, _CfnTag_f6864754]]]]]]:
350
+ '''An array of key-value pairs to match for your resources.
351
+
352
+ You can use the set of Unicode letters, digits, whitespace, ``_`` , ``.`` , ``/`` , ``=`` , ``+`` , and ``-`` .
353
+
354
+ For the tag key, you can specify a value that is 1 to 128 characters in length and cannot be prefixed with ``aws:`` .
355
+
356
+ For the tag value, you can specify a value that is 0 to 256 characters in length. If the specified tag value is 0 characters, the rule is applied to all principals with the specified tag key.
357
+
358
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-analysisrulecriteria.html#cfn-accessanalyzer-analyzer-analysisrulecriteria-resourcetags
359
+ '''
360
+ result = self._values.get("resource_tags")
361
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, _CfnTag_f6864754]]]]]], result)
362
+
363
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
364
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
365
+
366
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
367
+ return not (rhs == self)
368
+
369
+ def __repr__(self) -> str:
370
+ return "AnalysisRuleCriteriaProperty(%s)" % ", ".join(
371
+ k + "=" + repr(v) for k, v in self._values.items()
372
+ )
373
+
374
+ @jsii.data_type(
375
+ jsii_type="aws-cdk-lib.aws_accessanalyzer.CfnAnalyzer.AnalysisRuleProperty",
376
+ jsii_struct_bases=[],
377
+ name_mapping={"exclusions": "exclusions"},
378
+ )
379
+ class AnalysisRuleProperty:
380
+ def __init__(
381
+ self,
382
+ *,
383
+ exclusions: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnAnalyzer.AnalysisRuleCriteriaProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
384
+ ) -> None:
385
+ '''Contains information about analysis rules for the analyzer.
386
+
387
+ Analysis rules determine which entities will generate findings based on the criteria you define when you create the rule.
388
+
389
+ :param exclusions: A list of rules for the analyzer containing criteria to exclude from analysis. Entities that meet the rule criteria will not generate findings.
390
+
391
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-analysisrule.html
392
+ :exampleMetadata: fixture=_generated
393
+
394
+ Example::
395
+
396
+ # The code below shows an example of how to instantiate this type.
397
+ # The values are placeholders you should change.
398
+ from aws_cdk import aws_accessanalyzer as accessanalyzer
399
+
400
+ analysis_rule_property = accessanalyzer.CfnAnalyzer.AnalysisRuleProperty(
401
+ exclusions=[accessanalyzer.CfnAnalyzer.AnalysisRuleCriteriaProperty(
402
+ account_ids=["accountIds"],
403
+ resource_tags=[[CfnTag(
404
+ key="key",
405
+ value="value"
406
+ )]]
407
+ )]
408
+ )
409
+ '''
410
+ if __debug__:
411
+ type_hints = typing.get_type_hints(_typecheckingstub__17edc274e7f0852c4514c56018aaea9d25296dab4aaadab463eab14602e93887)
412
+ check_type(argname="argument exclusions", value=exclusions, expected_type=type_hints["exclusions"])
413
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
414
+ if exclusions is not None:
415
+ self._values["exclusions"] = exclusions
416
+
417
+ @builtins.property
418
+ def exclusions(
419
+ self,
420
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnAnalyzer.AnalysisRuleCriteriaProperty"]]]]:
421
+ '''A list of rules for the analyzer containing criteria to exclude from analysis.
422
+
423
+ Entities that meet the rule criteria will not generate findings.
424
+
425
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-analysisrule.html#cfn-accessanalyzer-analyzer-analysisrule-exclusions
426
+ '''
427
+ result = self._values.get("exclusions")
428
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnAnalyzer.AnalysisRuleCriteriaProperty"]]]], result)
429
+
430
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
431
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
432
+
433
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
434
+ return not (rhs == self)
435
+
436
+ def __repr__(self) -> str:
437
+ return "AnalysisRuleProperty(%s)" % ", ".join(
438
+ k + "=" + repr(v) for k, v in self._values.items()
439
+ )
440
+
280
441
  @jsii.data_type(
281
442
  jsii_type="aws-cdk-lib.aws_accessanalyzer.CfnAnalyzer.AnalyzerConfigurationProperty",
282
443
  jsii_struct_bases=[],
@@ -288,9 +449,9 @@ class CfnAnalyzer(
288
449
  *,
289
450
  unused_access_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnAnalyzer.UnusedAccessConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
290
451
  ) -> None:
291
- '''Contains information about the configuration of an unused access analyzer for an AWS organization or account.
452
+ '''Contains information about the configuration of an analyzer for an AWS organization or account.
292
453
 
293
- :param unused_access_configuration: Specifies the configuration of an unused access analyzer for an AWS organization or account. External access analyzers do not support any configuration.
454
+ :param unused_access_configuration: Specifies the configuration of an unused access analyzer for an AWS organization or account.
294
455
 
295
456
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-analyzerconfiguration.html
296
457
  :exampleMetadata: fixture=_generated
@@ -303,6 +464,15 @@ class CfnAnalyzer(
303
464
 
304
465
  analyzer_configuration_property = accessanalyzer.CfnAnalyzer.AnalyzerConfigurationProperty(
305
466
  unused_access_configuration=accessanalyzer.CfnAnalyzer.UnusedAccessConfigurationProperty(
467
+ analysis_rule=accessanalyzer.CfnAnalyzer.AnalysisRuleProperty(
468
+ exclusions=[accessanalyzer.CfnAnalyzer.AnalysisRuleCriteriaProperty(
469
+ account_ids=["accountIds"],
470
+ resource_tags=[[CfnTag(
471
+ key="key",
472
+ value="value"
473
+ )]]
474
+ )]
475
+ ),
306
476
  unused_access_age=123
307
477
  )
308
478
  )
@@ -320,8 +490,6 @@ class CfnAnalyzer(
320
490
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnAnalyzer.UnusedAccessConfigurationProperty"]]:
321
491
  '''Specifies the configuration of an unused access analyzer for an AWS organization or account.
322
492
 
323
- External access analyzers do not support any configuration.
324
-
325
493
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-analyzerconfiguration.html#cfn-accessanalyzer-analyzer-analyzerconfiguration-unusedaccessconfiguration
326
494
  '''
327
495
  result = self._values.get("unused_access_configuration")
@@ -352,6 +520,8 @@ class CfnAnalyzer(
352
520
  ) -> None:
353
521
  '''Contains information about an archive rule.
354
522
 
523
+ Archive rules automatically archive new findings that meet the criteria you define when you create the rule.
524
+
355
525
  :param filter: The criteria for the rule.
356
526
  :param rule_name: The name of the rule to create.
357
527
 
@@ -550,17 +720,22 @@ class CfnAnalyzer(
550
720
  @jsii.data_type(
551
721
  jsii_type="aws-cdk-lib.aws_accessanalyzer.CfnAnalyzer.UnusedAccessConfigurationProperty",
552
722
  jsii_struct_bases=[],
553
- name_mapping={"unused_access_age": "unusedAccessAge"},
723
+ name_mapping={
724
+ "analysis_rule": "analysisRule",
725
+ "unused_access_age": "unusedAccessAge",
726
+ },
554
727
  )
555
728
  class UnusedAccessConfigurationProperty:
556
729
  def __init__(
557
730
  self,
558
731
  *,
732
+ analysis_rule: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnAnalyzer.AnalysisRuleProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
559
733
  unused_access_age: typing.Optional[jsii.Number] = None,
560
734
  ) -> None:
561
735
  '''Contains information about an unused access analyzer.
562
736
 
563
- :param unused_access_age: The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days.
737
+ :param analysis_rule: Contains information about analysis rules for the analyzer. Analysis rules determine which entities will generate findings based on the criteria you define when you create the rule.
738
+ :param unused_access_age: The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 365 days.
564
739
 
565
740
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-unusedaccessconfiguration.html
566
741
  :exampleMetadata: fixture=_generated
@@ -572,21 +747,46 @@ class CfnAnalyzer(
572
747
  from aws_cdk import aws_accessanalyzer as accessanalyzer
573
748
 
574
749
  unused_access_configuration_property = accessanalyzer.CfnAnalyzer.UnusedAccessConfigurationProperty(
750
+ analysis_rule=accessanalyzer.CfnAnalyzer.AnalysisRuleProperty(
751
+ exclusions=[accessanalyzer.CfnAnalyzer.AnalysisRuleCriteriaProperty(
752
+ account_ids=["accountIds"],
753
+ resource_tags=[[CfnTag(
754
+ key="key",
755
+ value="value"
756
+ )]]
757
+ )]
758
+ ),
575
759
  unused_access_age=123
576
760
  )
577
761
  '''
578
762
  if __debug__:
579
763
  type_hints = typing.get_type_hints(_typecheckingstub__b15bc1bfb223a199dc73f744cc56dfec8d77e91fcae9e8e5b3520484a497aba7)
764
+ check_type(argname="argument analysis_rule", value=analysis_rule, expected_type=type_hints["analysis_rule"])
580
765
  check_type(argname="argument unused_access_age", value=unused_access_age, expected_type=type_hints["unused_access_age"])
581
766
  self._values: typing.Dict[builtins.str, typing.Any] = {}
767
+ if analysis_rule is not None:
768
+ self._values["analysis_rule"] = analysis_rule
582
769
  if unused_access_age is not None:
583
770
  self._values["unused_access_age"] = unused_access_age
584
771
 
772
+ @builtins.property
773
+ def analysis_rule(
774
+ self,
775
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnAnalyzer.AnalysisRuleProperty"]]:
776
+ '''Contains information about analysis rules for the analyzer.
777
+
778
+ Analysis rules determine which entities will generate findings based on the criteria you define when you create the rule.
779
+
780
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-unusedaccessconfiguration.html#cfn-accessanalyzer-analyzer-unusedaccessconfiguration-analysisrule
781
+ '''
782
+ result = self._values.get("analysis_rule")
783
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnAnalyzer.AnalysisRuleProperty"]], result)
784
+
585
785
  @builtins.property
586
786
  def unused_access_age(self) -> typing.Optional[jsii.Number]:
587
787
  '''The specified access age in days for which to generate findings for unused access.
588
788
 
589
- For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days.
789
+ For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 365 days.
590
790
 
591
791
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-accessanalyzer-analyzer-unusedaccessconfiguration.html#cfn-accessanalyzer-analyzer-unusedaccessconfiguration-unusedaccessage
592
792
  '''
@@ -629,10 +829,10 @@ class CfnAnalyzerProps:
629
829
  '''Properties for defining a ``CfnAnalyzer``.
630
830
 
631
831
  :param type: The type represents the zone of trust for the analyzer. *Allowed Values* : ACCOUNT | ORGANIZATION | ACCOUNT_UNUSED_ACCESS | ORGANIZATION_UNUSED_ACCESS
632
- :param analyzer_configuration: Contains information about the configuration of an unused access analyzer for an AWS organization or account.
832
+ :param analyzer_configuration: Contains information about the configuration of an analyzer for an AWS organization or account.
633
833
  :param analyzer_name: The name of the analyzer.
634
834
  :param archive_rules: Specifies the archive rules to add for the analyzer. Archive rules automatically archive findings that meet the criteria you define for the rule.
635
- :param tags: An array of key-value pairs to apply to the analyzer.
835
+ :param tags: An array of key-value pairs to apply to the analyzer. You can use the set of Unicode letters, digits, whitespace, ``_`` , ``.`` , ``/`` , ``=`` , ``+`` , and ``-`` . For the tag key, you can specify a value that is 1 to 128 characters in length and cannot be prefixed with ``aws:`` . For the tag value, you can specify a value that is 0 to 256 characters in length.
636
836
 
637
837
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-accessanalyzer-analyzer.html
638
838
  :exampleMetadata: fixture=_generated
@@ -649,6 +849,15 @@ class CfnAnalyzerProps:
649
849
  # the properties below are optional
650
850
  analyzer_configuration=accessanalyzer.CfnAnalyzer.AnalyzerConfigurationProperty(
651
851
  unused_access_configuration=accessanalyzer.CfnAnalyzer.UnusedAccessConfigurationProperty(
852
+ analysis_rule=accessanalyzer.CfnAnalyzer.AnalysisRuleProperty(
853
+ exclusions=[accessanalyzer.CfnAnalyzer.AnalysisRuleCriteriaProperty(
854
+ account_ids=["accountIds"],
855
+ resource_tags=[[CfnTag(
856
+ key="key",
857
+ value="value"
858
+ )]]
859
+ )]
860
+ ),
652
861
  unused_access_age=123
653
862
  )
654
863
  ),
@@ -706,7 +915,7 @@ class CfnAnalyzerProps:
706
915
  def analyzer_configuration(
707
916
  self,
708
917
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnAnalyzer.AnalyzerConfigurationProperty]]:
709
- '''Contains information about the configuration of an unused access analyzer for an AWS organization or account.
918
+ '''Contains information about the configuration of an analyzer for an AWS organization or account.
710
919
 
711
920
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-accessanalyzer-analyzer.html#cfn-accessanalyzer-analyzer-analyzerconfiguration
712
921
  '''
@@ -739,6 +948,12 @@ class CfnAnalyzerProps:
739
948
  def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
740
949
  '''An array of key-value pairs to apply to the analyzer.
741
950
 
951
+ You can use the set of Unicode letters, digits, whitespace, ``_`` , ``.`` , ``/`` , ``=`` , ``+`` , and ``-`` .
952
+
953
+ For the tag key, you can specify a value that is 1 to 128 characters in length and cannot be prefixed with ``aws:`` .
954
+
955
+ For the tag value, you can specify a value that is 0 to 256 characters in length.
956
+
742
957
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-accessanalyzer-analyzer.html#cfn-accessanalyzer-analyzer-tags
743
958
  '''
744
959
  result = self._values.get("tags")
@@ -818,6 +1033,21 @@ def _typecheckingstub__a60563761f5e2faa4dde6d3c0daa593ac20d10acf23bf72fc62050810
818
1033
  """Type checking stubs"""
819
1034
  pass
820
1035
 
1036
+ def _typecheckingstub__36c3b122854545155d3943e2cf1f8f001f347b0db4e3b0e61e5562d5c4418440(
1037
+ *,
1038
+ account_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
1039
+ resource_tags: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]]]]]] = None,
1040
+ ) -> None:
1041
+ """Type checking stubs"""
1042
+ pass
1043
+
1044
+ def _typecheckingstub__17edc274e7f0852c4514c56018aaea9d25296dab4aaadab463eab14602e93887(
1045
+ *,
1046
+ exclusions: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAnalyzer.AnalysisRuleCriteriaProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
1047
+ ) -> None:
1048
+ """Type checking stubs"""
1049
+ pass
1050
+
821
1051
  def _typecheckingstub__31c56409583b90336517d4c07b7b7849a386335199a589eff293943ed3b54e61(
822
1052
  *,
823
1053
  unused_access_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAnalyzer.UnusedAccessConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -846,6 +1076,7 @@ def _typecheckingstub__a277539f2c67c28a2a9fc67270fd81239b1346785d9508df320b963a2
846
1076
 
847
1077
  def _typecheckingstub__b15bc1bfb223a199dc73f744cc56dfec8d77e91fcae9e8e5b3520484a497aba7(
848
1078
  *,
1079
+ analysis_rule: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAnalyzer.AnalysisRuleProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
849
1080
  unused_access_age: typing.Optional[jsii.Number] = None,
850
1081
  ) -> None:
851
1082
  """Type checking stubs"""
@@ -120,6 +120,9 @@ class CfnServiceLevelObjective(
120
120
  - ``autoscaling:DescribeAutoScalingGroups``
121
121
 
122
122
  You can easily set SLO targets for your applications that are discovered by Application Signals, using critical metrics such as latency and availability. You can also set SLOs against any CloudWatch metric or math expression that produces a time series.
123
+ .. epigraph::
124
+
125
+ You can't create an SLO for a service operation that was discovered by Application Signals until after that operation has reported standard metrics to Application Signals.
123
126
 
124
127
  You cannot change from a period-based SLO to a request-based SLO, or change from a request-based SLO to a period-based SLO.
125
128
 
@@ -523,8 +526,12 @@ class CfnServiceLevelObjective(
523
526
  '''This object defines the length of the look-back window used to calculate one burn rate metric for this SLO.
524
527
 
525
528
  The burn rate measures how fast the service is consuming the error budget, relative to the attainment goal of the SLO. A burn rate of exactly 1 indicates that the SLO goal will be met exactly.
529
+
526
530
  For example, if you specify 60 as the number of minutes in the look-back window, the burn rate is calculated as the following:
527
- burn rate = error rate over the look-back window / (1 - attainment goal percentage)
531
+
532
+ *burn rate = error rate over the look-back window / (100% - attainment goal percentage)*
533
+
534
+ For more information about burn rates, see `Calculate burn rates <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-ServiceLevelObjectives.html#CloudWatch-ServiceLevelObjectives-burn>`_ .
528
535
 
529
536
  :param look_back_window_minutes: The number of minutes to use as the look-back window.
530
537