aws-cdk-lib 2.185.0__py3-none-any.whl → 2.186.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 (49) hide show
  1. aws_cdk/__init__.py +102 -29
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.185.0.jsii.tgz → aws-cdk-lib@2.186.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_amazonmq/__init__.py +3 -2
  5. aws_cdk/aws_apigatewayv2/__init__.py +9 -0
  6. aws_cdk/aws_appconfig/__init__.py +3 -3
  7. aws_cdk/aws_applicationsignals/__init__.py +363 -3
  8. aws_cdk/aws_appsync/__init__.py +65 -3
  9. aws_cdk/aws_bedrock/__init__.py +385 -14
  10. aws_cdk/aws_cleanrooms/__init__.py +21 -9
  11. aws_cdk/aws_cloudformation/__init__.py +1 -5
  12. aws_cdk/aws_cloudfront/__init__.py +4 -1
  13. aws_cdk/aws_cloudfront_origins/__init__.py +4 -2
  14. aws_cdk/aws_codeartifact/__init__.py +20 -33
  15. aws_cdk/aws_codepipeline/__init__.py +1328 -120
  16. aws_cdk/aws_cognito/__init__.py +1 -1
  17. aws_cdk/aws_cognito_identitypool/__init__.py +2303 -0
  18. aws_cdk/aws_connect/__init__.py +3 -7
  19. aws_cdk/aws_controltower/__init__.py +18 -26
  20. aws_cdk/aws_datazone/__init__.py +3471 -2
  21. aws_cdk/aws_ec2/__init__.py +560 -25
  22. aws_cdk/aws_ecs/__init__.py +15 -20
  23. aws_cdk/aws_events/__init__.py +37 -14
  24. aws_cdk/aws_gamelift/__init__.py +5 -5
  25. aws_cdk/aws_iam/__init__.py +264 -0
  26. aws_cdk/aws_imagebuilder/__init__.py +3 -27
  27. aws_cdk/aws_kinesisfirehose/__init__.py +2 -3
  28. aws_cdk/aws_lambda/__init__.py +7 -1
  29. aws_cdk/aws_location/__init__.py +24 -7
  30. aws_cdk/aws_msk/__init__.py +8 -2
  31. aws_cdk/aws_networkfirewall/__init__.py +16 -12
  32. aws_cdk/aws_oam/__init__.py +8 -37
  33. aws_cdk/aws_quicksight/__init__.py +6 -69
  34. aws_cdk/aws_redshiftserverless/__init__.py +192 -15
  35. aws_cdk/aws_rum/__init__.py +315 -52
  36. aws_cdk/aws_scheduler/__init__.py +3944 -121
  37. aws_cdk/aws_scheduler_targets/__init__.py +4472 -0
  38. aws_cdk/aws_ssmquicksetup/__init__.py +5 -3
  39. aws_cdk/aws_stepfunctions/__init__.py +17 -15
  40. aws_cdk/aws_timestream/__init__.py +4 -4
  41. aws_cdk/aws_wafv2/__init__.py +345 -0
  42. aws_cdk/aws_workspacesthinclient/__init__.py +4 -4
  43. aws_cdk/cx_api/__init__.py +23 -0
  44. {aws_cdk_lib-2.185.0.dist-info → aws_cdk_lib-2.186.0.dist-info}/METADATA +1 -1
  45. {aws_cdk_lib-2.185.0.dist-info → aws_cdk_lib-2.186.0.dist-info}/RECORD +49 -47
  46. {aws_cdk_lib-2.185.0.dist-info → aws_cdk_lib-2.186.0.dist-info}/LICENSE +0 -0
  47. {aws_cdk_lib-2.185.0.dist-info → aws_cdk_lib-2.186.0.dist-info}/NOTICE +0 -0
  48. {aws_cdk_lib-2.185.0.dist-info → aws_cdk_lib-2.186.0.dist-info}/WHEEL +0 -0
  49. {aws_cdk_lib-2.185.0.dist-info → aws_cdk_lib-2.186.0.dist-info}/top_level.txt +0 -0
@@ -11934,6 +11934,7 @@ class CfnWebACL(
11934
11934
  captcha_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWebACL.CaptchaConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
11935
11935
  challenge_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWebACL.ChallengeConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
11936
11936
  custom_response_bodies: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, typing.Union["CfnWebACL.CustomResponseBodyProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
11937
+ data_protection_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWebACL.DataProtectionConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
11937
11938
  description: typing.Optional[builtins.str] = None,
11938
11939
  name: typing.Optional[builtins.str] = None,
11939
11940
  rules: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWebACL.RuleProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
@@ -11950,6 +11951,7 @@ class CfnWebACL(
11950
11951
  :param captcha_config: Specifies how AWS WAF should handle ``CAPTCHA`` evaluations for rules that don't have their own ``CaptchaConfig`` settings. If you don't specify this, AWS WAF uses its default settings for ``CaptchaConfig`` .
11951
11952
  :param challenge_config: Specifies how AWS WAF should handle challenge evaluations for rules that don't have their own ``ChallengeConfig`` settings. If you don't specify this, AWS WAF uses its default settings for ``ChallengeConfig`` .
11952
11953
  :param custom_response_bodies: A map of custom response keys and content bodies. When you create a rule with a block action, you can send a custom response to the web request. You define these for the web ACL, and then use them in the rules and default actions that you define in the web ACL. For information about customizing web requests and responses, see `Customizing web requests and responses in AWS WAF <https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html>`_ in the *AWS WAF Developer Guide* . For information about the limits on count and size for custom request and response settings, see `AWS WAF quotas <https://docs.aws.amazon.com/waf/latest/developerguide/limits.html>`_ in the *AWS WAF Developer Guide* .
11954
+ :param data_protection_config: Specifies data protection to apply to the web request data for the web ACL. This is a web ACL level data protection option. The data protection that you configure for the web ACL alters the data that's available for any other data collection activity, including your AWS WAF logging destinations, web ACL request sampling, and Amazon Security Lake data collection and management. Your other option for data protection is in the logging configuration, which only affects logging.
11953
11955
  :param description: A description of the web ACL that helps with identification.
11954
11956
  :param name: The name of the web ACL. You cannot change the name of a web ACL after you create it.
11955
11957
  :param rules: The rule statements used to identify the web requests that you want to manage. Each rule includes one top-level statement that AWS WAF uses to identify matching web requests, and parameters that govern how AWS WAF handles them.
@@ -11968,6 +11970,7 @@ class CfnWebACL(
11968
11970
  captcha_config=captcha_config,
11969
11971
  challenge_config=challenge_config,
11970
11972
  custom_response_bodies=custom_response_bodies,
11973
+ data_protection_config=data_protection_config,
11971
11974
  description=description,
11972
11975
  name=name,
11973
11976
  rules=rules,
@@ -12183,6 +12186,24 @@ class CfnWebACL(
12183
12186
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
12184
12187
  jsii.set(self, "customResponseBodies", value) # pyright: ignore[reportArgumentType]
12185
12188
 
12189
+ @builtins.property
12190
+ @jsii.member(jsii_name="dataProtectionConfig")
12191
+ def data_protection_config(
12192
+ self,
12193
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWebACL.DataProtectionConfigProperty"]]:
12194
+ '''Specifies data protection to apply to the web request data for the web ACL.'''
12195
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWebACL.DataProtectionConfigProperty"]], jsii.get(self, "dataProtectionConfig"))
12196
+
12197
+ @data_protection_config.setter
12198
+ def data_protection_config(
12199
+ self,
12200
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnWebACL.DataProtectionConfigProperty"]],
12201
+ ) -> None:
12202
+ if __debug__:
12203
+ type_hints = typing.get_type_hints(_typecheckingstub__c8fdb8c606175920c3facb5c8db0632e7cdc7bedffcd3c6c787bab31ba6f6474)
12204
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
12205
+ jsii.set(self, "dataProtectionConfig", value) # pyright: ignore[reportArgumentType]
12206
+
12186
12207
  @builtins.property
12187
12208
  @jsii.member(jsii_name="description")
12188
12209
  def description(self) -> typing.Optional[builtins.str]:
@@ -14133,6 +14154,199 @@ class CfnWebACL(
14133
14154
  k + "=" + repr(v) for k, v in self._values.items()
14134
14155
  )
14135
14156
 
14157
+ @jsii.data_type(
14158
+ jsii_type="aws-cdk-lib.aws_wafv2.CfnWebACL.DataProtectProperty",
14159
+ jsii_struct_bases=[],
14160
+ name_mapping={
14161
+ "action": "action",
14162
+ "field": "field",
14163
+ "exclude_rate_based_details": "excludeRateBasedDetails",
14164
+ "exclude_rule_match_details": "excludeRuleMatchDetails",
14165
+ },
14166
+ )
14167
+ class DataProtectProperty:
14168
+ def __init__(
14169
+ self,
14170
+ *,
14171
+ action: builtins.str,
14172
+ field: typing.Union[_IResolvable_da3f097b, typing.Union["CfnWebACL.FieldToProtectProperty", typing.Dict[builtins.str, typing.Any]]],
14173
+ exclude_rate_based_details: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
14174
+ exclude_rule_match_details: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
14175
+ ) -> None:
14176
+ '''
14177
+ :param action:
14178
+ :param field: Field in log to protect.
14179
+ :param exclude_rate_based_details:
14180
+ :param exclude_rule_match_details:
14181
+
14182
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-dataprotect.html
14183
+ :exampleMetadata: fixture=_generated
14184
+
14185
+ Example::
14186
+
14187
+ # The code below shows an example of how to instantiate this type.
14188
+ # The values are placeholders you should change.
14189
+ from aws_cdk import aws_wafv2 as wafv2
14190
+
14191
+ data_protect_property = wafv2.CfnWebACL.DataProtectProperty(
14192
+ action="action",
14193
+ field=wafv2.CfnWebACL.FieldToProtectProperty(
14194
+ field_type="fieldType",
14195
+
14196
+ # the properties below are optional
14197
+ field_keys=["fieldKeys"]
14198
+ ),
14199
+
14200
+ # the properties below are optional
14201
+ exclude_rate_based_details=False,
14202
+ exclude_rule_match_details=False
14203
+ )
14204
+ '''
14205
+ if __debug__:
14206
+ type_hints = typing.get_type_hints(_typecheckingstub__426b9eaa484bd1569796d5a87210701ae64a082cfa2a2f0342a5b25283344e18)
14207
+ check_type(argname="argument action", value=action, expected_type=type_hints["action"])
14208
+ check_type(argname="argument field", value=field, expected_type=type_hints["field"])
14209
+ check_type(argname="argument exclude_rate_based_details", value=exclude_rate_based_details, expected_type=type_hints["exclude_rate_based_details"])
14210
+ check_type(argname="argument exclude_rule_match_details", value=exclude_rule_match_details, expected_type=type_hints["exclude_rule_match_details"])
14211
+ self._values: typing.Dict[builtins.str, typing.Any] = {
14212
+ "action": action,
14213
+ "field": field,
14214
+ }
14215
+ if exclude_rate_based_details is not None:
14216
+ self._values["exclude_rate_based_details"] = exclude_rate_based_details
14217
+ if exclude_rule_match_details is not None:
14218
+ self._values["exclude_rule_match_details"] = exclude_rule_match_details
14219
+
14220
+ @builtins.property
14221
+ def action(self) -> builtins.str:
14222
+ '''
14223
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-dataprotect.html#cfn-wafv2-webacl-dataprotect-action
14224
+ '''
14225
+ result = self._values.get("action")
14226
+ assert result is not None, "Required property 'action' is missing"
14227
+ return typing.cast(builtins.str, result)
14228
+
14229
+ @builtins.property
14230
+ def field(
14231
+ self,
14232
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnWebACL.FieldToProtectProperty"]:
14233
+ '''Field in log to protect.
14234
+
14235
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-dataprotect.html#cfn-wafv2-webacl-dataprotect-field
14236
+ '''
14237
+ result = self._values.get("field")
14238
+ assert result is not None, "Required property 'field' is missing"
14239
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnWebACL.FieldToProtectProperty"], result)
14240
+
14241
+ @builtins.property
14242
+ def exclude_rate_based_details(
14243
+ self,
14244
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
14245
+ '''
14246
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-dataprotect.html#cfn-wafv2-webacl-dataprotect-excluderatebaseddetails
14247
+ '''
14248
+ result = self._values.get("exclude_rate_based_details")
14249
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
14250
+
14251
+ @builtins.property
14252
+ def exclude_rule_match_details(
14253
+ self,
14254
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
14255
+ '''
14256
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-dataprotect.html#cfn-wafv2-webacl-dataprotect-excluderulematchdetails
14257
+ '''
14258
+ result = self._values.get("exclude_rule_match_details")
14259
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
14260
+
14261
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
14262
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
14263
+
14264
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
14265
+ return not (rhs == self)
14266
+
14267
+ def __repr__(self) -> str:
14268
+ return "DataProtectProperty(%s)" % ", ".join(
14269
+ k + "=" + repr(v) for k, v in self._values.items()
14270
+ )
14271
+
14272
+ @jsii.data_type(
14273
+ jsii_type="aws-cdk-lib.aws_wafv2.CfnWebACL.DataProtectionConfigProperty",
14274
+ jsii_struct_bases=[],
14275
+ name_mapping={"data_protections": "dataProtections"},
14276
+ )
14277
+ class DataProtectionConfigProperty:
14278
+ def __init__(
14279
+ self,
14280
+ *,
14281
+ data_protections: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnWebACL.DataProtectProperty", typing.Dict[builtins.str, typing.Any]]]]],
14282
+ ) -> None:
14283
+ '''Specifies data protection to apply to the web request data for the web ACL.
14284
+
14285
+ This is a web ACL level data protection option.
14286
+
14287
+ The data protection that you configure for the web ACL alters the data that's available for any other data collection activity, including your AWS WAF logging destinations, web ACL request sampling, and Amazon Security Lake data collection and management. Your other option for data protection is in the logging configuration, which only affects logging.
14288
+
14289
+ This is part of the data protection configuration for a web ACL.
14290
+
14291
+ :param data_protections: An array of data protection configurations for specific web request field types. This is defined for each web ACL. AWS WAF applies the specified protection to all web requests that the web ACL inspects.
14292
+
14293
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-dataprotectionconfig.html
14294
+ :exampleMetadata: fixture=_generated
14295
+
14296
+ Example::
14297
+
14298
+ # The code below shows an example of how to instantiate this type.
14299
+ # The values are placeholders you should change.
14300
+ from aws_cdk import aws_wafv2 as wafv2
14301
+
14302
+ data_protection_config_property = wafv2.CfnWebACL.DataProtectionConfigProperty(
14303
+ data_protections=[wafv2.CfnWebACL.DataProtectProperty(
14304
+ action="action",
14305
+ field=wafv2.CfnWebACL.FieldToProtectProperty(
14306
+ field_type="fieldType",
14307
+
14308
+ # the properties below are optional
14309
+ field_keys=["fieldKeys"]
14310
+ ),
14311
+
14312
+ # the properties below are optional
14313
+ exclude_rate_based_details=False,
14314
+ exclude_rule_match_details=False
14315
+ )]
14316
+ )
14317
+ '''
14318
+ if __debug__:
14319
+ type_hints = typing.get_type_hints(_typecheckingstub__00facdbed1fde99291b1bde086b472ce66ee6dd143e53d5639cc3ea8b02e5eac)
14320
+ check_type(argname="argument data_protections", value=data_protections, expected_type=type_hints["data_protections"])
14321
+ self._values: typing.Dict[builtins.str, typing.Any] = {
14322
+ "data_protections": data_protections,
14323
+ }
14324
+
14325
+ @builtins.property
14326
+ def data_protections(
14327
+ self,
14328
+ ) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnWebACL.DataProtectProperty"]]]:
14329
+ '''An array of data protection configurations for specific web request field types.
14330
+
14331
+ This is defined for each web ACL. AWS WAF applies the specified protection to all web requests that the web ACL inspects.
14332
+
14333
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-dataprotectionconfig.html#cfn-wafv2-webacl-dataprotectionconfig-dataprotections
14334
+ '''
14335
+ result = self._values.get("data_protections")
14336
+ assert result is not None, "Required property 'data_protections' is missing"
14337
+ return typing.cast(typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnWebACL.DataProtectProperty"]]], result)
14338
+
14339
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
14340
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
14341
+
14342
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
14343
+ return not (rhs == self)
14344
+
14345
+ def __repr__(self) -> str:
14346
+ return "DataProtectionConfigProperty(%s)" % ", ".join(
14347
+ k + "=" + repr(v) for k, v in self._values.items()
14348
+ )
14349
+
14136
14350
  @jsii.data_type(
14137
14351
  jsii_type="aws-cdk-lib.aws_wafv2.CfnWebACL.DefaultActionProperty",
14138
14352
  jsii_struct_bases=[],
@@ -14703,6 +14917,83 @@ class CfnWebACL(
14703
14917
  k + "=" + repr(v) for k, v in self._values.items()
14704
14918
  )
14705
14919
 
14920
+ @jsii.data_type(
14921
+ jsii_type="aws-cdk-lib.aws_wafv2.CfnWebACL.FieldToProtectProperty",
14922
+ jsii_struct_bases=[],
14923
+ name_mapping={"field_type": "fieldType", "field_keys": "fieldKeys"},
14924
+ )
14925
+ class FieldToProtectProperty:
14926
+ def __init__(
14927
+ self,
14928
+ *,
14929
+ field_type: builtins.str,
14930
+ field_keys: typing.Optional[typing.Sequence[builtins.str]] = None,
14931
+ ) -> None:
14932
+ '''Specifies a field type and keys to protect in stored web request data.
14933
+
14934
+ This is part of the data protection configuration for a web ACL.
14935
+
14936
+ :param field_type: Specifies the web request component type to protect.
14937
+ :param field_keys: Specifies the keys to protect for the specified field type. If you don't specify any key, then all keys for the field type are protected.
14938
+
14939
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-fieldtoprotect.html
14940
+ :exampleMetadata: fixture=_generated
14941
+
14942
+ Example::
14943
+
14944
+ # The code below shows an example of how to instantiate this type.
14945
+ # The values are placeholders you should change.
14946
+ from aws_cdk import aws_wafv2 as wafv2
14947
+
14948
+ field_to_protect_property = wafv2.CfnWebACL.FieldToProtectProperty(
14949
+ field_type="fieldType",
14950
+
14951
+ # the properties below are optional
14952
+ field_keys=["fieldKeys"]
14953
+ )
14954
+ '''
14955
+ if __debug__:
14956
+ type_hints = typing.get_type_hints(_typecheckingstub__b289950ea26daa0c8967a6c0a3a4de1a0fa062f7bc5f28fcf70ab8e7fa4989f0)
14957
+ check_type(argname="argument field_type", value=field_type, expected_type=type_hints["field_type"])
14958
+ check_type(argname="argument field_keys", value=field_keys, expected_type=type_hints["field_keys"])
14959
+ self._values: typing.Dict[builtins.str, typing.Any] = {
14960
+ "field_type": field_type,
14961
+ }
14962
+ if field_keys is not None:
14963
+ self._values["field_keys"] = field_keys
14964
+
14965
+ @builtins.property
14966
+ def field_type(self) -> builtins.str:
14967
+ '''Specifies the web request component type to protect.
14968
+
14969
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-fieldtoprotect.html#cfn-wafv2-webacl-fieldtoprotect-fieldtype
14970
+ '''
14971
+ result = self._values.get("field_type")
14972
+ assert result is not None, "Required property 'field_type' is missing"
14973
+ return typing.cast(builtins.str, result)
14974
+
14975
+ @builtins.property
14976
+ def field_keys(self) -> typing.Optional[typing.List[builtins.str]]:
14977
+ '''Specifies the keys to protect for the specified field type.
14978
+
14979
+ If you don't specify any key, then all keys for the field type are protected.
14980
+
14981
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-webacl-fieldtoprotect.html#cfn-wafv2-webacl-fieldtoprotect-fieldkeys
14982
+ '''
14983
+ result = self._values.get("field_keys")
14984
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
14985
+
14986
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
14987
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
14988
+
14989
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
14990
+ return not (rhs == self)
14991
+
14992
+ def __repr__(self) -> str:
14993
+ return "FieldToProtectProperty(%s)" % ", ".join(
14994
+ k + "=" + repr(v) for k, v in self._values.items()
14995
+ )
14996
+
14706
14997
  @jsii.data_type(
14707
14998
  jsii_type="aws-cdk-lib.aws_wafv2.CfnWebACL.ForwardedIPConfigurationProperty",
14708
14999
  jsii_struct_bases=[],
@@ -20931,6 +21222,7 @@ class CfnWebACLAssociationProps:
20931
21222
  "captcha_config": "captchaConfig",
20932
21223
  "challenge_config": "challengeConfig",
20933
21224
  "custom_response_bodies": "customResponseBodies",
21225
+ "data_protection_config": "dataProtectionConfig",
20934
21226
  "description": "description",
20935
21227
  "name": "name",
20936
21228
  "rules": "rules",
@@ -20949,6 +21241,7 @@ class CfnWebACLProps:
20949
21241
  captcha_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWebACL.CaptchaConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
20950
21242
  challenge_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWebACL.ChallengeConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
20951
21243
  custom_response_bodies: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, typing.Union[CfnWebACL.CustomResponseBodyProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
21244
+ data_protection_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWebACL.DataProtectionConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
20952
21245
  description: typing.Optional[builtins.str] = None,
20953
21246
  name: typing.Optional[builtins.str] = None,
20954
21247
  rules: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWebACL.RuleProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
@@ -20964,6 +21257,7 @@ class CfnWebACLProps:
20964
21257
  :param captcha_config: Specifies how AWS WAF should handle ``CAPTCHA`` evaluations for rules that don't have their own ``CaptchaConfig`` settings. If you don't specify this, AWS WAF uses its default settings for ``CaptchaConfig`` .
20965
21258
  :param challenge_config: Specifies how AWS WAF should handle challenge evaluations for rules that don't have their own ``ChallengeConfig`` settings. If you don't specify this, AWS WAF uses its default settings for ``ChallengeConfig`` .
20966
21259
  :param custom_response_bodies: A map of custom response keys and content bodies. When you create a rule with a block action, you can send a custom response to the web request. You define these for the web ACL, and then use them in the rules and default actions that you define in the web ACL. For information about customizing web requests and responses, see `Customizing web requests and responses in AWS WAF <https://docs.aws.amazon.com/waf/latest/developerguide/waf-custom-request-response.html>`_ in the *AWS WAF Developer Guide* . For information about the limits on count and size for custom request and response settings, see `AWS WAF quotas <https://docs.aws.amazon.com/waf/latest/developerguide/limits.html>`_ in the *AWS WAF Developer Guide* .
21260
+ :param data_protection_config: Specifies data protection to apply to the web request data for the web ACL. This is a web ACL level data protection option. The data protection that you configure for the web ACL alters the data that's available for any other data collection activity, including your AWS WAF logging destinations, web ACL request sampling, and Amazon Security Lake data collection and management. Your other option for data protection is in the logging configuration, which only affects logging.
20967
21261
  :param description: A description of the web ACL that helps with identification.
20968
21262
  :param name: The name of the web ACL. You cannot change the name of a web ACL after you create it.
20969
21263
  :param rules: The rule statements used to identify the web requests that you want to manage. Each rule includes one top-level statement that AWS WAF uses to identify matching web requests, and parameters that govern how AWS WAF handles them.
@@ -20986,6 +21280,7 @@ class CfnWebACLProps:
20986
21280
  check_type(argname="argument captcha_config", value=captcha_config, expected_type=type_hints["captcha_config"])
20987
21281
  check_type(argname="argument challenge_config", value=challenge_config, expected_type=type_hints["challenge_config"])
20988
21282
  check_type(argname="argument custom_response_bodies", value=custom_response_bodies, expected_type=type_hints["custom_response_bodies"])
21283
+ check_type(argname="argument data_protection_config", value=data_protection_config, expected_type=type_hints["data_protection_config"])
20989
21284
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
20990
21285
  check_type(argname="argument name", value=name, expected_type=type_hints["name"])
20991
21286
  check_type(argname="argument rules", value=rules, expected_type=type_hints["rules"])
@@ -21004,6 +21299,8 @@ class CfnWebACLProps:
21004
21299
  self._values["challenge_config"] = challenge_config
21005
21300
  if custom_response_bodies is not None:
21006
21301
  self._values["custom_response_bodies"] = custom_response_bodies
21302
+ if data_protection_config is not None:
21303
+ self._values["data_protection_config"] = data_protection_config
21007
21304
  if description is not None:
21008
21305
  self._values["description"] = description
21009
21306
  if name is not None:
@@ -21117,6 +21414,21 @@ class CfnWebACLProps:
21117
21414
  result = self._values.get("custom_response_bodies")
21118
21415
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, CfnWebACL.CustomResponseBodyProperty]]]], result)
21119
21416
 
21417
+ @builtins.property
21418
+ def data_protection_config(
21419
+ self,
21420
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnWebACL.DataProtectionConfigProperty]]:
21421
+ '''Specifies data protection to apply to the web request data for the web ACL.
21422
+
21423
+ This is a web ACL level data protection option.
21424
+
21425
+ The data protection that you configure for the web ACL alters the data that's available for any other data collection activity, including your AWS WAF logging destinations, web ACL request sampling, and Amazon Security Lake data collection and management. Your other option for data protection is in the logging configuration, which only affects logging.
21426
+
21427
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-webacl.html#cfn-wafv2-webacl-dataprotectionconfig
21428
+ '''
21429
+ result = self._values.get("data_protection_config")
21430
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnWebACL.DataProtectionConfigProperty]], result)
21431
+
21120
21432
  @builtins.property
21121
21433
  def description(self) -> typing.Optional[builtins.str]:
21122
21434
  '''A description of the web ACL that helps with identification.
@@ -22069,6 +22381,7 @@ def _typecheckingstub__03030a65c492e95a1d1ae5ddafd6acbb9efdfa7e18b6367ac7e03eb8f
22069
22381
  captcha_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWebACL.CaptchaConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
22070
22382
  challenge_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWebACL.ChallengeConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
22071
22383
  custom_response_bodies: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, typing.Union[CfnWebACL.CustomResponseBodyProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
22384
+ data_protection_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWebACL.DataProtectionConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
22072
22385
  description: typing.Optional[builtins.str] = None,
22073
22386
  name: typing.Optional[builtins.str] = None,
22074
22387
  rules: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWebACL.RuleProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
@@ -22132,6 +22445,12 @@ def _typecheckingstub__5782b9cc65df721fabb81b38101a49b0dce480579e9b262edcfe915ec
22132
22445
  """Type checking stubs"""
22133
22446
  pass
22134
22447
 
22448
+ def _typecheckingstub__c8fdb8c606175920c3facb5c8db0632e7cdc7bedffcd3c6c787bab31ba6f6474(
22449
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnWebACL.DataProtectionConfigProperty]],
22450
+ ) -> None:
22451
+ """Type checking stubs"""
22452
+ pass
22453
+
22135
22454
  def _typecheckingstub__b7cfda3db6502d36377ec778a8c90e7487c0f54a00cb343261a4d256ace27df9(
22136
22455
  value: typing.Optional[builtins.str],
22137
22456
  ) -> None:
@@ -22322,6 +22641,23 @@ def _typecheckingstub__6dbc9439dfbaeae9e0932894939e1048a58a2d028d4ee3fbdcead25e1
22322
22641
  """Type checking stubs"""
22323
22642
  pass
22324
22643
 
22644
+ def _typecheckingstub__426b9eaa484bd1569796d5a87210701ae64a082cfa2a2f0342a5b25283344e18(
22645
+ *,
22646
+ action: builtins.str,
22647
+ field: typing.Union[_IResolvable_da3f097b, typing.Union[CfnWebACL.FieldToProtectProperty, typing.Dict[builtins.str, typing.Any]]],
22648
+ exclude_rate_based_details: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
22649
+ exclude_rule_match_details: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
22650
+ ) -> None:
22651
+ """Type checking stubs"""
22652
+ pass
22653
+
22654
+ def _typecheckingstub__00facdbed1fde99291b1bde086b472ce66ee6dd143e53d5639cc3ea8b02e5eac(
22655
+ *,
22656
+ data_protections: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWebACL.DataProtectProperty, typing.Dict[builtins.str, typing.Any]]]]],
22657
+ ) -> None:
22658
+ """Type checking stubs"""
22659
+ pass
22660
+
22325
22661
  def _typecheckingstub__4f9b2681c5a7f99be956a44a9c1d132bd2244e6fdc65ac82690f66a9402698b5(
22326
22662
  *,
22327
22663
  allow: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWebACL.AllowActionProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -22362,6 +22698,14 @@ def _typecheckingstub__25d147c856e9a8fd64f4cc05856e4813e584f37ef787792ad3c4e0790
22362
22698
  """Type checking stubs"""
22363
22699
  pass
22364
22700
 
22701
+ def _typecheckingstub__b289950ea26daa0c8967a6c0a3a4de1a0fa062f7bc5f28fcf70ab8e7fa4989f0(
22702
+ *,
22703
+ field_type: builtins.str,
22704
+ field_keys: typing.Optional[typing.Sequence[builtins.str]] = None,
22705
+ ) -> None:
22706
+ """Type checking stubs"""
22707
+ pass
22708
+
22365
22709
  def _typecheckingstub__db1f5e352c4a5fdd9a13196892955f19f25065d63109402ea882298152866a75(
22366
22710
  *,
22367
22711
  fallback_behavior: builtins.str,
@@ -22866,6 +23210,7 @@ def _typecheckingstub__6e738df983d65d43590c0a02c03e6e0daa3a2097ae335371d22711838
22866
23210
  captcha_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWebACL.CaptchaConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
22867
23211
  challenge_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWebACL.ChallengeConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
22868
23212
  custom_response_bodies: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, typing.Union[CfnWebACL.CustomResponseBodyProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
23213
+ data_protection_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWebACL.DataProtectionConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
22869
23214
  description: typing.Optional[builtins.str] = None,
22870
23215
  name: typing.Optional[builtins.str] = None,
22871
23216
  rules: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnWebACL.RuleProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
@@ -151,7 +151,7 @@ class CfnEnvironment(
151
151
  :param desktop_arn: The Amazon Resource Name (ARN) of the desktop to stream from Amazon WorkSpaces, WorkSpaces Secure Browser, or AppStream 2.0.
152
152
  :param desired_software_set_id: The ID of the software set to apply.
153
153
  :param desktop_endpoint: The URL for the identity provider login (only for environments that use AppStream 2.0).
154
- :param device_creation_tags: The tag keys and optional values for the newly created devices for this environment.
154
+ :param device_creation_tags: An array of key-value pairs to apply to the newly created devices for this environment.
155
155
  :param kms_key_arn: The Amazon Resource Name (ARN) of the AWS Key Management Service key used to encrypt the environment.
156
156
  :param maintenance_window: A specification for a time window to apply software updates.
157
157
  :param name: The name of the environment.
@@ -353,7 +353,7 @@ class CfnEnvironment(
353
353
  def device_creation_tags(
354
354
  self,
355
355
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, _CfnTag_f6864754]]]]:
356
- '''The tag keys and optional values for the newly created devices for this environment.'''
356
+ '''An array of key-value pairs to apply to the newly created devices for this environment.'''
357
357
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, _CfnTag_f6864754]]]], jsii.get(self, "deviceCreationTags"))
358
358
 
359
359
  @device_creation_tags.setter
@@ -645,7 +645,7 @@ class CfnEnvironmentProps:
645
645
  :param desktop_arn: The Amazon Resource Name (ARN) of the desktop to stream from Amazon WorkSpaces, WorkSpaces Secure Browser, or AppStream 2.0.
646
646
  :param desired_software_set_id: The ID of the software set to apply.
647
647
  :param desktop_endpoint: The URL for the identity provider login (only for environments that use AppStream 2.0).
648
- :param device_creation_tags: The tag keys and optional values for the newly created devices for this environment.
648
+ :param device_creation_tags: An array of key-value pairs to apply to the newly created devices for this environment.
649
649
  :param kms_key_arn: The Amazon Resource Name (ARN) of the AWS Key Management Service key used to encrypt the environment.
650
650
  :param maintenance_window: A specification for a time window to apply software updates.
651
651
  :param name: The name of the environment.
@@ -759,7 +759,7 @@ class CfnEnvironmentProps:
759
759
  def device_creation_tags(
760
760
  self,
761
761
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, _CfnTag_f6864754]]]]:
762
- '''The tag keys and optional values for the newly created devices for this environment.
762
+ '''An array of key-value pairs to apply to the newly created devices for this environment.
763
763
 
764
764
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspacesthinclient-environment.html#cfn-workspacesthinclient-environment-devicecreationtags
765
765
  '''
@@ -659,6 +659,29 @@ When this feature flag is disabled, it will keep the root account principal in t
659
659
  }
660
660
  }
661
661
  ```
662
+
663
+ * `@aws-cdk/aws-events:requireEventBusPolicySid`
664
+
665
+ When this flag is enabled:
666
+
667
+ * Resource policies will be created with Statement IDs for service principals
668
+ * The operation will succeed as expected
669
+
670
+ When this flag is disabled:
671
+
672
+ * A warning will be emitted
673
+ * The grant operation will be dropped
674
+ * No permissions will be added
675
+
676
+ *cdk.json*
677
+
678
+ ```json
679
+ {
680
+ "context": {
681
+ "@aws-cdk/aws-events:requireEventBusPolicySid": true
682
+ }
683
+ }
684
+ ```
662
685
  '''
663
686
  from pkgutil import extend_path
664
687
  __path__ = extend_path(__path__, __name__)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: aws-cdk-lib
3
- Version: 2.185.0
3
+ Version: 2.186.0
4
4
  Summary: Version 2 of the AWS Cloud Development Kit library
5
5
  Home-page: https://github.com/aws/aws-cdk
6
6
  Author: Amazon Web Services