aws-cdk-lib 2.155.0__py3-none-any.whl → 2.157.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 (66) hide show
  1. aws_cdk/__init__.py +28 -24
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.155.0.jsii.tgz → aws-cdk-lib@2.157.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_acmpca/__init__.py +10 -75
  5. aws_cdk/aws_amplify/__init__.py +106 -0
  6. aws_cdk/aws_apigatewayv2/__init__.py +81 -13
  7. aws_cdk/aws_appintegrations/__init__.py +14 -14
  8. aws_cdk/aws_applicationsignals/__init__.py +750 -1
  9. aws_cdk/aws_appsync/__init__.py +50 -18
  10. aws_cdk/aws_autoscaling/__init__.py +6 -6
  11. aws_cdk/aws_backup/__init__.py +39 -0
  12. aws_cdk/aws_batch/__init__.py +41 -0
  13. aws_cdk/aws_bedrock/__init__.py +1528 -91
  14. aws_cdk/aws_chatbot/__init__.py +6 -6
  15. aws_cdk/aws_cloudformation/__init__.py +22 -22
  16. aws_cdk/aws_cloudfront/__init__.py +650 -57
  17. aws_cdk/aws_cloudfront/experimental/__init__.py +30 -3
  18. aws_cdk/aws_cloudfront_origins/__init__.py +2034 -91
  19. aws_cdk/aws_codebuild/__init__.py +1 -1
  20. aws_cdk/aws_datasync/__init__.py +40 -29
  21. aws_cdk/aws_docdb/__init__.py +78 -6
  22. aws_cdk/aws_ec2/__init__.py +397 -75
  23. aws_cdk/aws_ecs/__init__.py +271 -101
  24. aws_cdk/aws_ecs_patterns/__init__.py +129 -11
  25. aws_cdk/aws_eks/__init__.py +40 -4
  26. aws_cdk/aws_elasticloadbalancingv2/__init__.py +26 -50
  27. aws_cdk/aws_entityresolution/__init__.py +117 -4
  28. aws_cdk/aws_events/__init__.py +40 -14
  29. aws_cdk/aws_events_targets/__init__.py +357 -0
  30. aws_cdk/aws_glue/__init__.py +0 -8
  31. aws_cdk/aws_groundstation/__init__.py +27 -16
  32. aws_cdk/aws_guardduty/__init__.py +26 -14
  33. aws_cdk/aws_iam/__init__.py +7 -8
  34. aws_cdk/aws_iotfleetwise/__init__.py +108 -0
  35. aws_cdk/aws_kms/__init__.py +53 -10
  36. aws_cdk/aws_lambda/__init__.py +147 -17
  37. aws_cdk/aws_lambda_nodejs/__init__.py +30 -3
  38. aws_cdk/aws_macie/__init__.py +4 -4
  39. aws_cdk/aws_medialive/__init__.py +348 -0
  40. aws_cdk/aws_mediapackagev2/__init__.py +38 -38
  41. aws_cdk/aws_neptune/__init__.py +14 -8
  42. aws_cdk/aws_opensearchservice/__init__.py +194 -0
  43. aws_cdk/aws_pcaconnectorscep/__init__.py +884 -0
  44. aws_cdk/aws_personalize/__init__.py +2 -2
  45. aws_cdk/aws_pipes/__init__.py +22 -22
  46. aws_cdk/aws_qbusiness/__init__.py +675 -6
  47. aws_cdk/aws_quicksight/__init__.py +3285 -0
  48. aws_cdk/aws_rds/__init__.py +24 -0
  49. aws_cdk/aws_s3/__init__.py +13 -14
  50. aws_cdk/aws_sagemaker/__init__.py +1167 -0
  51. aws_cdk/aws_secretsmanager/__init__.py +2 -3
  52. aws_cdk/aws_securityhub/__init__.py +108 -103
  53. aws_cdk/aws_ses/__init__.py +31 -0
  54. aws_cdk/aws_sns/__init__.py +19 -13
  55. aws_cdk/aws_ssm/__init__.py +10 -6
  56. aws_cdk/aws_ssmquicksetup/__init__.py +967 -0
  57. aws_cdk/aws_stepfunctions_tasks/__init__.py +106 -45
  58. aws_cdk/aws_synthetics/__init__.py +13 -0
  59. aws_cdk/cx_api/__init__.py +16 -0
  60. aws_cdk/triggers/__init__.py +30 -3
  61. {aws_cdk_lib-2.155.0.dist-info → aws_cdk_lib-2.157.0.dist-info}/METADATA +1 -1
  62. {aws_cdk_lib-2.155.0.dist-info → aws_cdk_lib-2.157.0.dist-info}/RECORD +66 -64
  63. {aws_cdk_lib-2.155.0.dist-info → aws_cdk_lib-2.157.0.dist-info}/LICENSE +0 -0
  64. {aws_cdk_lib-2.155.0.dist-info → aws_cdk_lib-2.157.0.dist-info}/NOTICE +0 -0
  65. {aws_cdk_lib-2.155.0.dist-info → aws_cdk_lib-2.157.0.dist-info}/WHEEL +0 -0
  66. {aws_cdk_lib-2.155.0.dist-info → aws_cdk_lib-2.157.0.dist-info}/top_level.txt +0 -0
@@ -1304,6 +1304,29 @@ fn = lambda_.Function(self, "Lambda_with_IPv6_VPC",
1304
1304
  )
1305
1305
  ```
1306
1306
 
1307
+ ## Outbound traffic
1308
+
1309
+ By default, when creating a Lambda function, it would add a security group outbound rule to allow sending all network traffic (except IPv6). This is controlled by `allowAllOutbound` in function properties, which has a default value of `true`.
1310
+
1311
+ To allow outbound IPv6 traffic by default, explicitly set `allowAllIpv6Outbound` to `true` in function properties as shown below (the default value for `allowAllIpv6Outbound` is `false`):
1312
+
1313
+ ```python
1314
+ import aws_cdk.aws_ec2 as ec2
1315
+
1316
+
1317
+ vpc = ec2.Vpc(self, "Vpc")
1318
+
1319
+ fn = lambda_.Function(self, "LambdaWithIpv6Outbound",
1320
+ code=lambda_.InlineCode("def main(event, context): pass"),
1321
+ handler="index.main",
1322
+ runtime=lambda_.Runtime.PYTHON_3_9,
1323
+ vpc=vpc,
1324
+ allow_all_ipv6_outbound=True
1325
+ )
1326
+ ```
1327
+
1328
+ Do not specify `allowAllOutbound` or `allowAllIpv6Outbound` property if the `securityGroups` or `securityGroup` property is set. Instead, configure these properties directly on the security group.
1329
+
1307
1330
  ## Ephemeral Storage
1308
1331
 
1309
1332
  You can configure ephemeral storage on a function to control the amount of storage it gets for reading
@@ -6126,12 +6149,14 @@ class CfnFunction(
6126
6149
 
6127
6150
  To create a function, you need a `deployment package <https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html>`_ and an `execution role <https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html>`_ . The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing.
6128
6151
 
6129
- You set the package type to ``Image`` if the deployment package is a `container image <https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html>`_ . For a container image, the code property must include the URI of a container image in the Amazon ECR registry. You do not need to specify the handler and runtime properties.
6152
+ You set the package type to ``Image`` if the deployment package is a `container image <https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html>`_ . For these functions, include the URI of the container image in the Amazon ECR registry in the ```ImageUri`` property of the ``Code`` property <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri>`_ . You do not need to specify the handler and runtime properties.
6130
6153
 
6131
- You set the package type to ``Zip`` if the deployment package is a `.zip file archive <https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip>`_ . For a .zip file archive, the code property specifies the location of the .zip file. You must also specify the handler and runtime properties. For a Python example, see `Deploy Python Lambda functions with .zip file archives <https://docs.aws.amazon.com/lambda/latest/dg/python-package.html>`_ .
6154
+ You set the package type to ``Zip`` if the deployment package is a `.zip file archive <https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip>`_ . For these functions, specify the Amazon S3 location of your .zip file in the ``Code`` property. Alternatively, for Node.js and Python functions, you can define your function inline in the ```ZipFile`` property of the ``Code`` property <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile>`_ . In both cases, you must also specify the handler and runtime properties.
6132
6155
 
6133
6156
  You can use `code signing <https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html>`_ if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode`` , Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function.
6134
6157
 
6158
+ When you update a ``AWS::Lambda::Function`` resource, CloudFormation calls the `UpdateFunctionConfiguration <https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html>`_ and `UpdateFunctionCode <https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html>`_ Lambda APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CloudFormation update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the ``$LATEST`` version.
6159
+
6135
6160
  Note that you configure `provisioned concurrency <https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html>`_ on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias`` .
6136
6161
 
6137
6162
  For a complete introduction to Lambda functions, see `What is Lambda? <https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html>`_ in the *Lambda developer guide.*
@@ -9573,7 +9598,7 @@ class CfnUrl(
9573
9598
  :param scope: Scope in which this resource is defined.
9574
9599
  :param id: Construct identifier for this resource (unique in its scope).
9575
9600
  :param auth_type: The type of authentication that your function URL uses. Set to ``AWS_IAM`` if you want to restrict access to authenticated users only. Set to ``NONE`` if you want to bypass IAM authentication to create a public endpoint. For more information, see `Security and auth model for Lambda function URLs <https://docs.aws.amazon.com/lambda/latest/dg/urls-auth.html>`_ .
9576
- :param target_function_arn: The name of the Lambda function. **Name formats** - *Function name* - ``my-function`` . - *Function ARN* - ``arn:aws:lambda:us-west-2:123456789012:function:my-function`` . - *Partial ARN* - ``123456789012:function:my-function`` . The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.
9601
+ :param target_function_arn: The name of the Lambda function. **Name formats** - *Function name* - ``my-function`` . - *Function ARN* - ``lambda: : :function:my-function`` . - *Partial ARN* - ``:function:my-function`` . The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.
9577
9602
  :param cors: The `Cross-Origin Resource Sharing (CORS) <https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS>`_ settings for your function URL.
9578
9603
  :param invoke_mode: Use one of the following options:. - ``BUFFERED`` – This is the default option. Lambda invokes your function using the ``Invoke`` API operation. Invocation results are available when the payload is complete. The maximum payload size is 6 MB. - ``RESPONSE_STREAM`` – Your function streams payload results as they become available. Lambda invokes your function using the ``InvokeWithResponseStream`` API operation. The maximum response payload size is 20 MB, however, you can `request a quota increase <https://docs.aws.amazon.com/servicequotas/latest/userguide/request-quota-increase.html>`_ .
9579
9604
  :param qualifier: The alias name.
@@ -9893,7 +9918,7 @@ class CfnUrlProps:
9893
9918
  '''Properties for defining a ``CfnUrl``.
9894
9919
 
9895
9920
  :param auth_type: The type of authentication that your function URL uses. Set to ``AWS_IAM`` if you want to restrict access to authenticated users only. Set to ``NONE`` if you want to bypass IAM authentication to create a public endpoint. For more information, see `Security and auth model for Lambda function URLs <https://docs.aws.amazon.com/lambda/latest/dg/urls-auth.html>`_ .
9896
- :param target_function_arn: The name of the Lambda function. **Name formats** - *Function name* - ``my-function`` . - *Function ARN* - ``arn:aws:lambda:us-west-2:123456789012:function:my-function`` . - *Partial ARN* - ``123456789012:function:my-function`` . The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.
9921
+ :param target_function_arn: The name of the Lambda function. **Name formats** - *Function name* - ``my-function`` . - *Function ARN* - ``lambda: : :function:my-function`` . - *Partial ARN* - ``:function:my-function`` . The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.
9897
9922
  :param cors: The `Cross-Origin Resource Sharing (CORS) <https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS>`_ settings for your function URL.
9898
9923
  :param invoke_mode: Use one of the following options:. - ``BUFFERED`` – This is the default option. Lambda invokes your function using the ``Invoke`` API operation. Invocation results are available when the payload is complete. The maximum payload size is 6 MB. - ``RESPONSE_STREAM`` – Your function streams payload results as they become available. Lambda invokes your function using the ``InvokeWithResponseStream`` API operation. The maximum response payload size is 20 MB, however, you can `request a quota increase <https://docs.aws.amazon.com/servicequotas/latest/userguide/request-quota-increase.html>`_ .
9899
9924
  :param qualifier: The alias name.
@@ -9960,8 +9985,8 @@ class CfnUrlProps:
9960
9985
 
9961
9986
  **Name formats** - *Function name* - ``my-function`` .
9962
9987
 
9963
- - *Function ARN* - ``arn:aws:lambda:us-west-2:123456789012:function:my-function`` .
9964
- - *Partial ARN* - ``123456789012:function:my-function`` .
9988
+ - *Function ARN* - ``lambda: : :function:my-function`` .
9989
+ - *Partial ARN* - ``:function:my-function`` .
9965
9990
 
9966
9991
  The length constraint applies only to the full ARN. If you specify only the function name, it is limited to 64 characters in length.
9967
9992
 
@@ -14120,6 +14145,7 @@ class FunctionAttributes:
14120
14145
  "on_success": "onSuccess",
14121
14146
  "retry_attempts": "retryAttempts",
14122
14147
  "adot_instrumentation": "adotInstrumentation",
14148
+ "allow_all_ipv6_outbound": "allowAllIpv6Outbound",
14123
14149
  "allow_all_outbound": "allowAllOutbound",
14124
14150
  "allow_public_subnet": "allowPublicSubnet",
14125
14151
  "application_log_level": "applicationLogLevel",
@@ -14174,6 +14200,7 @@ class FunctionOptions(EventInvokeConfigOptions):
14174
14200
  on_success: typing.Optional["IDestination"] = None,
14175
14201
  retry_attempts: typing.Optional[jsii.Number] = None,
14176
14202
  adot_instrumentation: typing.Optional[typing.Union[AdotInstrumentationConfig, typing.Dict[builtins.str, typing.Any]]] = None,
14203
+ allow_all_ipv6_outbound: typing.Optional[builtins.bool] = None,
14177
14204
  allow_all_outbound: typing.Optional[builtins.bool] = None,
14178
14205
  allow_public_subnet: typing.Optional[builtins.bool] = None,
14179
14206
  application_log_level: typing.Optional[builtins.str] = None,
@@ -14225,7 +14252,8 @@ class FunctionOptions(EventInvokeConfigOptions):
14225
14252
  :param on_success: The destination for successful invocations. Default: - no destination
14226
14253
  :param retry_attempts: The maximum number of times to retry when the function returns an error. Minimum: 0 Maximum: 2 Default: 2
14227
14254
  :param adot_instrumentation: Specify the configuration of AWS Distro for OpenTelemetry (ADOT) instrumentation. Default: - No ADOT instrumentation
14228
- :param allow_all_outbound: Whether to allow the Lambda to send all network traffic. If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllOutbound`` directly on the security group. Default: true
14255
+ :param allow_all_ipv6_outbound: Whether to allow the Lambda to send all ipv6 network traffic. If set to true, there will only be a single egress rule which allows all outbound ipv6 traffic. If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets using ipv6. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllIpv6Outbound`` directly on the security group. Default: false
14256
+ :param allow_all_outbound: Whether to allow the Lambda to send all network traffic (except ipv6). If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllOutbound`` directly on the security group. Default: true
14229
14257
  :param allow_public_subnet: Lambda Functions in a public subnet can NOT access the internet. Use this property to acknowledge this limitation and still place the function in a public subnet. Default: false
14230
14258
  :param application_log_level: (deprecated) Sets the application log level for the function. Default: "INFO"
14231
14259
  :param application_log_level_v2: Sets the application log level for the function. Default: ApplicationLogLevel.INFO
@@ -14314,6 +14342,7 @@ class FunctionOptions(EventInvokeConfigOptions):
14314
14342
  exec_wrapper=lambda_.AdotLambdaExecWrapper.REGULAR_HANDLER,
14315
14343
  layer_version=adot_layer_version
14316
14344
  ),
14345
+ allow_all_ipv6_outbound=False,
14317
14346
  allow_all_outbound=False,
14318
14347
  allow_public_subnet=False,
14319
14348
  application_log_level="applicationLogLevel",
@@ -14399,6 +14428,7 @@ class FunctionOptions(EventInvokeConfigOptions):
14399
14428
  check_type(argname="argument on_success", value=on_success, expected_type=type_hints["on_success"])
14400
14429
  check_type(argname="argument retry_attempts", value=retry_attempts, expected_type=type_hints["retry_attempts"])
14401
14430
  check_type(argname="argument adot_instrumentation", value=adot_instrumentation, expected_type=type_hints["adot_instrumentation"])
14431
+ check_type(argname="argument allow_all_ipv6_outbound", value=allow_all_ipv6_outbound, expected_type=type_hints["allow_all_ipv6_outbound"])
14402
14432
  check_type(argname="argument allow_all_outbound", value=allow_all_outbound, expected_type=type_hints["allow_all_outbound"])
14403
14433
  check_type(argname="argument allow_public_subnet", value=allow_public_subnet, expected_type=type_hints["allow_public_subnet"])
14404
14434
  check_type(argname="argument application_log_level", value=application_log_level, expected_type=type_hints["application_log_level"])
@@ -14453,6 +14483,8 @@ class FunctionOptions(EventInvokeConfigOptions):
14453
14483
  self._values["retry_attempts"] = retry_attempts
14454
14484
  if adot_instrumentation is not None:
14455
14485
  self._values["adot_instrumentation"] = adot_instrumentation
14486
+ if allow_all_ipv6_outbound is not None:
14487
+ self._values["allow_all_ipv6_outbound"] = allow_all_ipv6_outbound
14456
14488
  if allow_all_outbound is not None:
14457
14489
  self._values["allow_all_outbound"] = allow_all_outbound
14458
14490
  if allow_public_subnet is not None:
@@ -14593,9 +14625,25 @@ class FunctionOptions(EventInvokeConfigOptions):
14593
14625
  result = self._values.get("adot_instrumentation")
14594
14626
  return typing.cast(typing.Optional[AdotInstrumentationConfig], result)
14595
14627
 
14628
+ @builtins.property
14629
+ def allow_all_ipv6_outbound(self) -> typing.Optional[builtins.bool]:
14630
+ '''Whether to allow the Lambda to send all ipv6 network traffic.
14631
+
14632
+ If set to true, there will only be a single egress rule which allows all
14633
+ outbound ipv6 traffic. If set to false, you must individually add traffic rules to allow the
14634
+ Lambda to connect to network targets using ipv6.
14635
+
14636
+ Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set.
14637
+ Instead, configure ``allowAllIpv6Outbound`` directly on the security group.
14638
+
14639
+ :default: false
14640
+ '''
14641
+ result = self._values.get("allow_all_ipv6_outbound")
14642
+ return typing.cast(typing.Optional[builtins.bool], result)
14643
+
14596
14644
  @builtins.property
14597
14645
  def allow_all_outbound(self) -> typing.Optional[builtins.bool]:
14598
- '''Whether to allow the Lambda to send all network traffic.
14646
+ '''Whether to allow the Lambda to send all network traffic (except ipv6).
14599
14647
 
14600
14648
  If set to false, you must individually add traffic rules to allow the
14601
14649
  Lambda to connect to network targets.
@@ -15135,6 +15183,7 @@ class FunctionOptions(EventInvokeConfigOptions):
15135
15183
  "on_success": "onSuccess",
15136
15184
  "retry_attempts": "retryAttempts",
15137
15185
  "adot_instrumentation": "adotInstrumentation",
15186
+ "allow_all_ipv6_outbound": "allowAllIpv6Outbound",
15138
15187
  "allow_all_outbound": "allowAllOutbound",
15139
15188
  "allow_public_subnet": "allowPublicSubnet",
15140
15189
  "application_log_level": "applicationLogLevel",
@@ -15192,6 +15241,7 @@ class FunctionProps(FunctionOptions):
15192
15241
  on_success: typing.Optional["IDestination"] = None,
15193
15242
  retry_attempts: typing.Optional[jsii.Number] = None,
15194
15243
  adot_instrumentation: typing.Optional[typing.Union[AdotInstrumentationConfig, typing.Dict[builtins.str, typing.Any]]] = None,
15244
+ allow_all_ipv6_outbound: typing.Optional[builtins.bool] = None,
15195
15245
  allow_all_outbound: typing.Optional[builtins.bool] = None,
15196
15246
  allow_public_subnet: typing.Optional[builtins.bool] = None,
15197
15247
  application_log_level: typing.Optional[builtins.str] = None,
@@ -15245,7 +15295,8 @@ class FunctionProps(FunctionOptions):
15245
15295
  :param on_success: The destination for successful invocations. Default: - no destination
15246
15296
  :param retry_attempts: The maximum number of times to retry when the function returns an error. Minimum: 0 Maximum: 2 Default: 2
15247
15297
  :param adot_instrumentation: Specify the configuration of AWS Distro for OpenTelemetry (ADOT) instrumentation. Default: - No ADOT instrumentation
15248
- :param allow_all_outbound: Whether to allow the Lambda to send all network traffic. If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllOutbound`` directly on the security group. Default: true
15298
+ :param allow_all_ipv6_outbound: Whether to allow the Lambda to send all ipv6 network traffic. If set to true, there will only be a single egress rule which allows all outbound ipv6 traffic. If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets using ipv6. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllIpv6Outbound`` directly on the security group. Default: false
15299
+ :param allow_all_outbound: Whether to allow the Lambda to send all network traffic (except ipv6). If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllOutbound`` directly on the security group. Default: true
15249
15300
  :param allow_public_subnet: Lambda Functions in a public subnet can NOT access the internet. Use this property to acknowledge this limitation and still place the function in a public subnet. Default: false
15250
15301
  :param application_log_level: (deprecated) Sets the application log level for the function. Default: "INFO"
15251
15302
  :param application_log_level_v2: Sets the application log level for the function. Default: ApplicationLogLevel.INFO
@@ -15334,6 +15385,7 @@ class FunctionProps(FunctionOptions):
15334
15385
  check_type(argname="argument on_success", value=on_success, expected_type=type_hints["on_success"])
15335
15386
  check_type(argname="argument retry_attempts", value=retry_attempts, expected_type=type_hints["retry_attempts"])
15336
15387
  check_type(argname="argument adot_instrumentation", value=adot_instrumentation, expected_type=type_hints["adot_instrumentation"])
15388
+ check_type(argname="argument allow_all_ipv6_outbound", value=allow_all_ipv6_outbound, expected_type=type_hints["allow_all_ipv6_outbound"])
15337
15389
  check_type(argname="argument allow_all_outbound", value=allow_all_outbound, expected_type=type_hints["allow_all_outbound"])
15338
15390
  check_type(argname="argument allow_public_subnet", value=allow_public_subnet, expected_type=type_hints["allow_public_subnet"])
15339
15391
  check_type(argname="argument application_log_level", value=application_log_level, expected_type=type_hints["application_log_level"])
@@ -15395,6 +15447,8 @@ class FunctionProps(FunctionOptions):
15395
15447
  self._values["retry_attempts"] = retry_attempts
15396
15448
  if adot_instrumentation is not None:
15397
15449
  self._values["adot_instrumentation"] = adot_instrumentation
15450
+ if allow_all_ipv6_outbound is not None:
15451
+ self._values["allow_all_ipv6_outbound"] = allow_all_ipv6_outbound
15398
15452
  if allow_all_outbound is not None:
15399
15453
  self._values["allow_all_outbound"] = allow_all_outbound
15400
15454
  if allow_public_subnet is not None:
@@ -15535,9 +15589,25 @@ class FunctionProps(FunctionOptions):
15535
15589
  result = self._values.get("adot_instrumentation")
15536
15590
  return typing.cast(typing.Optional[AdotInstrumentationConfig], result)
15537
15591
 
15592
+ @builtins.property
15593
+ def allow_all_ipv6_outbound(self) -> typing.Optional[builtins.bool]:
15594
+ '''Whether to allow the Lambda to send all ipv6 network traffic.
15595
+
15596
+ If set to true, there will only be a single egress rule which allows all
15597
+ outbound ipv6 traffic. If set to false, you must individually add traffic rules to allow the
15598
+ Lambda to connect to network targets using ipv6.
15599
+
15600
+ Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set.
15601
+ Instead, configure ``allowAllIpv6Outbound`` directly on the security group.
15602
+
15603
+ :default: false
15604
+ '''
15605
+ result = self._values.get("allow_all_ipv6_outbound")
15606
+ return typing.cast(typing.Optional[builtins.bool], result)
15607
+
15538
15608
  @builtins.property
15539
15609
  def allow_all_outbound(self) -> typing.Optional[builtins.bool]:
15540
- '''Whether to allow the Lambda to send all network traffic.
15610
+ '''Whether to allow the Lambda to send all network traffic (except ipv6).
15541
15611
 
15542
15612
  If set to false, you must individually add traffic rules to allow the
15543
15613
  Lambda to connect to network targets.
@@ -20587,6 +20657,7 @@ class S3Code(Code, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.aws_lambda.S3
20587
20657
  "on_success": "onSuccess",
20588
20658
  "retry_attempts": "retryAttempts",
20589
20659
  "adot_instrumentation": "adotInstrumentation",
20660
+ "allow_all_ipv6_outbound": "allowAllIpv6Outbound",
20590
20661
  "allow_all_outbound": "allowAllOutbound",
20591
20662
  "allow_public_subnet": "allowPublicSubnet",
20592
20663
  "application_log_level": "applicationLogLevel",
@@ -20646,6 +20717,7 @@ class SingletonFunctionProps(FunctionProps):
20646
20717
  on_success: typing.Optional[IDestination] = None,
20647
20718
  retry_attempts: typing.Optional[jsii.Number] = None,
20648
20719
  adot_instrumentation: typing.Optional[typing.Union[AdotInstrumentationConfig, typing.Dict[builtins.str, typing.Any]]] = None,
20720
+ allow_all_ipv6_outbound: typing.Optional[builtins.bool] = None,
20649
20721
  allow_all_outbound: typing.Optional[builtins.bool] = None,
20650
20722
  allow_public_subnet: typing.Optional[builtins.bool] = None,
20651
20723
  application_log_level: typing.Optional[builtins.str] = None,
@@ -20702,7 +20774,8 @@ class SingletonFunctionProps(FunctionProps):
20702
20774
  :param on_success: The destination for successful invocations. Default: - no destination
20703
20775
  :param retry_attempts: The maximum number of times to retry when the function returns an error. Minimum: 0 Maximum: 2 Default: 2
20704
20776
  :param adot_instrumentation: Specify the configuration of AWS Distro for OpenTelemetry (ADOT) instrumentation. Default: - No ADOT instrumentation
20705
- :param allow_all_outbound: Whether to allow the Lambda to send all network traffic. If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllOutbound`` directly on the security group. Default: true
20777
+ :param allow_all_ipv6_outbound: Whether to allow the Lambda to send all ipv6 network traffic. If set to true, there will only be a single egress rule which allows all outbound ipv6 traffic. If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets using ipv6. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllIpv6Outbound`` directly on the security group. Default: false
20778
+ :param allow_all_outbound: Whether to allow the Lambda to send all network traffic (except ipv6). If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllOutbound`` directly on the security group. Default: true
20706
20779
  :param allow_public_subnet: Lambda Functions in a public subnet can NOT access the internet. Use this property to acknowledge this limitation and still place the function in a public subnet. Default: false
20707
20780
  :param application_log_level: (deprecated) Sets the application log level for the function. Default: "INFO"
20708
20781
  :param application_log_level_v2: Sets the application log level for the function. Default: ApplicationLogLevel.INFO
@@ -20776,6 +20849,7 @@ class SingletonFunctionProps(FunctionProps):
20776
20849
  check_type(argname="argument on_success", value=on_success, expected_type=type_hints["on_success"])
20777
20850
  check_type(argname="argument retry_attempts", value=retry_attempts, expected_type=type_hints["retry_attempts"])
20778
20851
  check_type(argname="argument adot_instrumentation", value=adot_instrumentation, expected_type=type_hints["adot_instrumentation"])
20852
+ check_type(argname="argument allow_all_ipv6_outbound", value=allow_all_ipv6_outbound, expected_type=type_hints["allow_all_ipv6_outbound"])
20779
20853
  check_type(argname="argument allow_all_outbound", value=allow_all_outbound, expected_type=type_hints["allow_all_outbound"])
20780
20854
  check_type(argname="argument allow_public_subnet", value=allow_public_subnet, expected_type=type_hints["allow_public_subnet"])
20781
20855
  check_type(argname="argument application_log_level", value=application_log_level, expected_type=type_hints["application_log_level"])
@@ -20840,6 +20914,8 @@ class SingletonFunctionProps(FunctionProps):
20840
20914
  self._values["retry_attempts"] = retry_attempts
20841
20915
  if adot_instrumentation is not None:
20842
20916
  self._values["adot_instrumentation"] = adot_instrumentation
20917
+ if allow_all_ipv6_outbound is not None:
20918
+ self._values["allow_all_ipv6_outbound"] = allow_all_ipv6_outbound
20843
20919
  if allow_all_outbound is not None:
20844
20920
  self._values["allow_all_outbound"] = allow_all_outbound
20845
20921
  if allow_public_subnet is not None:
@@ -20982,9 +21058,25 @@ class SingletonFunctionProps(FunctionProps):
20982
21058
  result = self._values.get("adot_instrumentation")
20983
21059
  return typing.cast(typing.Optional[AdotInstrumentationConfig], result)
20984
21060
 
21061
+ @builtins.property
21062
+ def allow_all_ipv6_outbound(self) -> typing.Optional[builtins.bool]:
21063
+ '''Whether to allow the Lambda to send all ipv6 network traffic.
21064
+
21065
+ If set to true, there will only be a single egress rule which allows all
21066
+ outbound ipv6 traffic. If set to false, you must individually add traffic rules to allow the
21067
+ Lambda to connect to network targets using ipv6.
21068
+
21069
+ Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set.
21070
+ Instead, configure ``allowAllIpv6Outbound`` directly on the security group.
21071
+
21072
+ :default: false
21073
+ '''
21074
+ result = self._values.get("allow_all_ipv6_outbound")
21075
+ return typing.cast(typing.Optional[builtins.bool], result)
21076
+
20985
21077
  @builtins.property
20986
21078
  def allow_all_outbound(self) -> typing.Optional[builtins.bool]:
20987
- '''Whether to allow the Lambda to send all network traffic.
21079
+ '''Whether to allow the Lambda to send all network traffic (except ipv6).
20988
21080
 
20989
21081
  If set to false, you must individually add traffic rules to allow the
20990
21082
  Lambda to connect to network targets.
@@ -23527,6 +23619,7 @@ class CodeSigningConfig(
23527
23619
  "on_success": "onSuccess",
23528
23620
  "retry_attempts": "retryAttempts",
23529
23621
  "adot_instrumentation": "adotInstrumentation",
23622
+ "allow_all_ipv6_outbound": "allowAllIpv6Outbound",
23530
23623
  "allow_all_outbound": "allowAllOutbound",
23531
23624
  "allow_public_subnet": "allowPublicSubnet",
23532
23625
  "application_log_level": "applicationLogLevel",
@@ -23582,6 +23675,7 @@ class DockerImageFunctionProps(FunctionOptions):
23582
23675
  on_success: typing.Optional[IDestination] = None,
23583
23676
  retry_attempts: typing.Optional[jsii.Number] = None,
23584
23677
  adot_instrumentation: typing.Optional[typing.Union[AdotInstrumentationConfig, typing.Dict[builtins.str, typing.Any]]] = None,
23678
+ allow_all_ipv6_outbound: typing.Optional[builtins.bool] = None,
23585
23679
  allow_all_outbound: typing.Optional[builtins.bool] = None,
23586
23680
  allow_public_subnet: typing.Optional[builtins.bool] = None,
23587
23681
  application_log_level: typing.Optional[builtins.str] = None,
@@ -23634,7 +23728,8 @@ class DockerImageFunctionProps(FunctionOptions):
23634
23728
  :param on_success: The destination for successful invocations. Default: - no destination
23635
23729
  :param retry_attempts: The maximum number of times to retry when the function returns an error. Minimum: 0 Maximum: 2 Default: 2
23636
23730
  :param adot_instrumentation: Specify the configuration of AWS Distro for OpenTelemetry (ADOT) instrumentation. Default: - No ADOT instrumentation
23637
- :param allow_all_outbound: Whether to allow the Lambda to send all network traffic. If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllOutbound`` directly on the security group. Default: true
23731
+ :param allow_all_ipv6_outbound: Whether to allow the Lambda to send all ipv6 network traffic. If set to true, there will only be a single egress rule which allows all outbound ipv6 traffic. If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets using ipv6. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllIpv6Outbound`` directly on the security group. Default: false
23732
+ :param allow_all_outbound: Whether to allow the Lambda to send all network traffic (except ipv6). If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllOutbound`` directly on the security group. Default: true
23638
23733
  :param allow_public_subnet: Lambda Functions in a public subnet can NOT access the internet. Use this property to acknowledge this limitation and still place the function in a public subnet. Default: false
23639
23734
  :param application_log_level: (deprecated) Sets the application log level for the function. Default: "INFO"
23640
23735
  :param application_log_level_v2: Sets the application log level for the function. Default: ApplicationLogLevel.INFO
@@ -23702,6 +23797,7 @@ class DockerImageFunctionProps(FunctionOptions):
23702
23797
  check_type(argname="argument on_success", value=on_success, expected_type=type_hints["on_success"])
23703
23798
  check_type(argname="argument retry_attempts", value=retry_attempts, expected_type=type_hints["retry_attempts"])
23704
23799
  check_type(argname="argument adot_instrumentation", value=adot_instrumentation, expected_type=type_hints["adot_instrumentation"])
23800
+ check_type(argname="argument allow_all_ipv6_outbound", value=allow_all_ipv6_outbound, expected_type=type_hints["allow_all_ipv6_outbound"])
23705
23801
  check_type(argname="argument allow_all_outbound", value=allow_all_outbound, expected_type=type_hints["allow_all_outbound"])
23706
23802
  check_type(argname="argument allow_public_subnet", value=allow_public_subnet, expected_type=type_hints["allow_public_subnet"])
23707
23803
  check_type(argname="argument application_log_level", value=application_log_level, expected_type=type_hints["application_log_level"])
@@ -23759,6 +23855,8 @@ class DockerImageFunctionProps(FunctionOptions):
23759
23855
  self._values["retry_attempts"] = retry_attempts
23760
23856
  if adot_instrumentation is not None:
23761
23857
  self._values["adot_instrumentation"] = adot_instrumentation
23858
+ if allow_all_ipv6_outbound is not None:
23859
+ self._values["allow_all_ipv6_outbound"] = allow_all_ipv6_outbound
23762
23860
  if allow_all_outbound is not None:
23763
23861
  self._values["allow_all_outbound"] = allow_all_outbound
23764
23862
  if allow_public_subnet is not None:
@@ -23899,9 +23997,25 @@ class DockerImageFunctionProps(FunctionOptions):
23899
23997
  result = self._values.get("adot_instrumentation")
23900
23998
  return typing.cast(typing.Optional[AdotInstrumentationConfig], result)
23901
23999
 
24000
+ @builtins.property
24001
+ def allow_all_ipv6_outbound(self) -> typing.Optional[builtins.bool]:
24002
+ '''Whether to allow the Lambda to send all ipv6 network traffic.
24003
+
24004
+ If set to true, there will only be a single egress rule which allows all
24005
+ outbound ipv6 traffic. If set to false, you must individually add traffic rules to allow the
24006
+ Lambda to connect to network targets using ipv6.
24007
+
24008
+ Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set.
24009
+ Instead, configure ``allowAllIpv6Outbound`` directly on the security group.
24010
+
24011
+ :default: false
24012
+ '''
24013
+ result = self._values.get("allow_all_ipv6_outbound")
24014
+ return typing.cast(typing.Optional[builtins.bool], result)
24015
+
23902
24016
  @builtins.property
23903
24017
  def allow_all_outbound(self) -> typing.Optional[builtins.bool]:
23904
- '''Whether to allow the Lambda to send all network traffic.
24018
+ '''Whether to allow the Lambda to send all network traffic (except ipv6).
23905
24019
 
23906
24020
  If set to false, you must individually add traffic rules to allow the
23907
24021
  Lambda to connect to network targets.
@@ -25637,6 +25751,7 @@ class SingletonFunction(
25637
25751
  handler: builtins.str,
25638
25752
  runtime: Runtime,
25639
25753
  adot_instrumentation: typing.Optional[typing.Union[AdotInstrumentationConfig, typing.Dict[builtins.str, typing.Any]]] = None,
25754
+ allow_all_ipv6_outbound: typing.Optional[builtins.bool] = None,
25640
25755
  allow_all_outbound: typing.Optional[builtins.bool] = None,
25641
25756
  allow_public_subnet: typing.Optional[builtins.bool] = None,
25642
25757
  application_log_level: typing.Optional[builtins.str] = None,
@@ -25694,7 +25809,8 @@ class SingletonFunction(
25694
25809
  :param handler: The name of the method within your code that Lambda calls to execute your function. The format includes the file name. It can also include namespaces and other qualifiers, depending on the runtime. For more information, see https://docs.aws.amazon.com/lambda/latest/dg/foundation-progmodel.html. Use ``Handler.FROM_IMAGE`` when defining a function from a Docker image. NOTE: If you specify your source code as inline text by specifying the ZipFile property within the Code property, specify index.function_name as the handler.
25695
25810
  :param runtime: The runtime environment for the Lambda function that you are uploading. For valid values, see the Runtime property in the AWS Lambda Developer Guide. Use ``Runtime.FROM_IMAGE`` when defining a function from a Docker image.
25696
25811
  :param adot_instrumentation: Specify the configuration of AWS Distro for OpenTelemetry (ADOT) instrumentation. Default: - No ADOT instrumentation
25697
- :param allow_all_outbound: Whether to allow the Lambda to send all network traffic. If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllOutbound`` directly on the security group. Default: true
25812
+ :param allow_all_ipv6_outbound: Whether to allow the Lambda to send all ipv6 network traffic. If set to true, there will only be a single egress rule which allows all outbound ipv6 traffic. If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets using ipv6. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllIpv6Outbound`` directly on the security group. Default: false
25813
+ :param allow_all_outbound: Whether to allow the Lambda to send all network traffic (except ipv6). If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllOutbound`` directly on the security group. Default: true
25698
25814
  :param allow_public_subnet: Lambda Functions in a public subnet can NOT access the internet. Use this property to acknowledge this limitation and still place the function in a public subnet. Default: false
25699
25815
  :param application_log_level: (deprecated) Sets the application log level for the function. Default: "INFO"
25700
25816
  :param application_log_level_v2: Sets the application log level for the function. Default: ApplicationLogLevel.INFO
@@ -25753,6 +25869,7 @@ class SingletonFunction(
25753
25869
  handler=handler,
25754
25870
  runtime=runtime,
25755
25871
  adot_instrumentation=adot_instrumentation,
25872
+ allow_all_ipv6_outbound=allow_all_ipv6_outbound,
25756
25873
  allow_all_outbound=allow_all_outbound,
25757
25874
  allow_public_subnet=allow_public_subnet,
25758
25875
  application_log_level=application_log_level,
@@ -26626,6 +26743,7 @@ class Function(
26626
26743
  handler: builtins.str,
26627
26744
  runtime: Runtime,
26628
26745
  adot_instrumentation: typing.Optional[typing.Union[AdotInstrumentationConfig, typing.Dict[builtins.str, typing.Any]]] = None,
26746
+ allow_all_ipv6_outbound: typing.Optional[builtins.bool] = None,
26629
26747
  allow_all_outbound: typing.Optional[builtins.bool] = None,
26630
26748
  allow_public_subnet: typing.Optional[builtins.bool] = None,
26631
26749
  application_log_level: typing.Optional[builtins.str] = None,
@@ -26681,7 +26799,8 @@ class Function(
26681
26799
  :param handler: The name of the method within your code that Lambda calls to execute your function. The format includes the file name. It can also include namespaces and other qualifiers, depending on the runtime. For more information, see https://docs.aws.amazon.com/lambda/latest/dg/foundation-progmodel.html. Use ``Handler.FROM_IMAGE`` when defining a function from a Docker image. NOTE: If you specify your source code as inline text by specifying the ZipFile property within the Code property, specify index.function_name as the handler.
26682
26800
  :param runtime: The runtime environment for the Lambda function that you are uploading. For valid values, see the Runtime property in the AWS Lambda Developer Guide. Use ``Runtime.FROM_IMAGE`` when defining a function from a Docker image.
26683
26801
  :param adot_instrumentation: Specify the configuration of AWS Distro for OpenTelemetry (ADOT) instrumentation. Default: - No ADOT instrumentation
26684
- :param allow_all_outbound: Whether to allow the Lambda to send all network traffic. If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllOutbound`` directly on the security group. Default: true
26802
+ :param allow_all_ipv6_outbound: Whether to allow the Lambda to send all ipv6 network traffic. If set to true, there will only be a single egress rule which allows all outbound ipv6 traffic. If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets using ipv6. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllIpv6Outbound`` directly on the security group. Default: false
26803
+ :param allow_all_outbound: Whether to allow the Lambda to send all network traffic (except ipv6). If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllOutbound`` directly on the security group. Default: true
26685
26804
  :param allow_public_subnet: Lambda Functions in a public subnet can NOT access the internet. Use this property to acknowledge this limitation and still place the function in a public subnet. Default: false
26686
26805
  :param application_log_level: (deprecated) Sets the application log level for the function. Default: "INFO"
26687
26806
  :param application_log_level_v2: Sets the application log level for the function. Default: ApplicationLogLevel.INFO
@@ -26738,6 +26857,7 @@ class Function(
26738
26857
  handler=handler,
26739
26858
  runtime=runtime,
26740
26859
  adot_instrumentation=adot_instrumentation,
26860
+ allow_all_ipv6_outbound=allow_all_ipv6_outbound,
26741
26861
  allow_all_outbound=allow_all_outbound,
26742
26862
  allow_public_subnet=allow_public_subnet,
26743
26863
  application_log_level=application_log_level,
@@ -27421,6 +27541,7 @@ class DockerImageFunction(
27421
27541
  *,
27422
27542
  code: DockerImageCode,
27423
27543
  adot_instrumentation: typing.Optional[typing.Union[AdotInstrumentationConfig, typing.Dict[builtins.str, typing.Any]]] = None,
27544
+ allow_all_ipv6_outbound: typing.Optional[builtins.bool] = None,
27424
27545
  allow_all_outbound: typing.Optional[builtins.bool] = None,
27425
27546
  allow_public_subnet: typing.Optional[builtins.bool] = None,
27426
27547
  application_log_level: typing.Optional[builtins.str] = None,
@@ -27474,7 +27595,8 @@ class DockerImageFunction(
27474
27595
  :param id: -
27475
27596
  :param code: The source code of your Lambda function. You can point to a file in an Amazon Simple Storage Service (Amazon S3) bucket or specify your source code as inline text.
27476
27597
  :param adot_instrumentation: Specify the configuration of AWS Distro for OpenTelemetry (ADOT) instrumentation. Default: - No ADOT instrumentation
27477
- :param allow_all_outbound: Whether to allow the Lambda to send all network traffic. If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllOutbound`` directly on the security group. Default: true
27598
+ :param allow_all_ipv6_outbound: Whether to allow the Lambda to send all ipv6 network traffic. If set to true, there will only be a single egress rule which allows all outbound ipv6 traffic. If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets using ipv6. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllIpv6Outbound`` directly on the security group. Default: false
27599
+ :param allow_all_outbound: Whether to allow the Lambda to send all network traffic (except ipv6). If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllOutbound`` directly on the security group. Default: true
27478
27600
  :param allow_public_subnet: Lambda Functions in a public subnet can NOT access the internet. Use this property to acknowledge this limitation and still place the function in a public subnet. Default: false
27479
27601
  :param application_log_level: (deprecated) Sets the application log level for the function. Default: "INFO"
27480
27602
  :param application_log_level_v2: Sets the application log level for the function. Default: ApplicationLogLevel.INFO
@@ -27529,6 +27651,7 @@ class DockerImageFunction(
27529
27651
  props = DockerImageFunctionProps(
27530
27652
  code=code,
27531
27653
  adot_instrumentation=adot_instrumentation,
27654
+ allow_all_ipv6_outbound=allow_all_ipv6_outbound,
27532
27655
  allow_all_outbound=allow_all_outbound,
27533
27656
  allow_public_subnet=allow_public_subnet,
27534
27657
  application_log_level=application_log_level,
@@ -29557,6 +29680,7 @@ def _typecheckingstub__59918bb957d892739733c7a5849db990615fe5329709ad7ba703e0ee4
29557
29680
  on_success: typing.Optional[IDestination] = None,
29558
29681
  retry_attempts: typing.Optional[jsii.Number] = None,
29559
29682
  adot_instrumentation: typing.Optional[typing.Union[AdotInstrumentationConfig, typing.Dict[builtins.str, typing.Any]]] = None,
29683
+ allow_all_ipv6_outbound: typing.Optional[builtins.bool] = None,
29560
29684
  allow_all_outbound: typing.Optional[builtins.bool] = None,
29561
29685
  allow_public_subnet: typing.Optional[builtins.bool] = None,
29562
29686
  application_log_level: typing.Optional[builtins.str] = None,
@@ -29611,6 +29735,7 @@ def _typecheckingstub__94e70d11aa3c53737d418dbb9983973dfc06dbdef5c8cc30613cc3c6d
29611
29735
  on_success: typing.Optional[IDestination] = None,
29612
29736
  retry_attempts: typing.Optional[jsii.Number] = None,
29613
29737
  adot_instrumentation: typing.Optional[typing.Union[AdotInstrumentationConfig, typing.Dict[builtins.str, typing.Any]]] = None,
29738
+ allow_all_ipv6_outbound: typing.Optional[builtins.bool] = None,
29614
29739
  allow_all_outbound: typing.Optional[builtins.bool] = None,
29615
29740
  allow_public_subnet: typing.Optional[builtins.bool] = None,
29616
29741
  application_log_level: typing.Optional[builtins.str] = None,
@@ -30109,6 +30234,7 @@ def _typecheckingstub__68a03ec9f866a29c77aabcf8328c63a49511790fa9714874f255b3292
30109
30234
  on_success: typing.Optional[IDestination] = None,
30110
30235
  retry_attempts: typing.Optional[jsii.Number] = None,
30111
30236
  adot_instrumentation: typing.Optional[typing.Union[AdotInstrumentationConfig, typing.Dict[builtins.str, typing.Any]]] = None,
30237
+ allow_all_ipv6_outbound: typing.Optional[builtins.bool] = None,
30112
30238
  allow_all_outbound: typing.Optional[builtins.bool] = None,
30113
30239
  allow_public_subnet: typing.Optional[builtins.bool] = None,
30114
30240
  application_log_level: typing.Optional[builtins.str] = None,
@@ -30361,6 +30487,7 @@ def _typecheckingstub__04dd97f4b18c00e7ee0981f2428664401ae0b75dbda6102ea3ef53d08
30361
30487
  on_success: typing.Optional[IDestination] = None,
30362
30488
  retry_attempts: typing.Optional[jsii.Number] = None,
30363
30489
  adot_instrumentation: typing.Optional[typing.Union[AdotInstrumentationConfig, typing.Dict[builtins.str, typing.Any]]] = None,
30490
+ allow_all_ipv6_outbound: typing.Optional[builtins.bool] = None,
30364
30491
  allow_all_outbound: typing.Optional[builtins.bool] = None,
30365
30492
  allow_public_subnet: typing.Optional[builtins.bool] = None,
30366
30493
  application_log_level: typing.Optional[builtins.str] = None,
@@ -30620,6 +30747,7 @@ def _typecheckingstub__e7b766bff13bb7266787cec9bebb600187e19c1672e530bb9cfa31649
30620
30747
  handler: builtins.str,
30621
30748
  runtime: Runtime,
30622
30749
  adot_instrumentation: typing.Optional[typing.Union[AdotInstrumentationConfig, typing.Dict[builtins.str, typing.Any]]] = None,
30750
+ allow_all_ipv6_outbound: typing.Optional[builtins.bool] = None,
30623
30751
  allow_all_outbound: typing.Optional[builtins.bool] = None,
30624
30752
  allow_public_subnet: typing.Optional[builtins.bool] = None,
30625
30753
  application_log_level: typing.Optional[builtins.str] = None,
@@ -30837,6 +30965,7 @@ def _typecheckingstub__724895b6b59aaf2b678ef25f2beca19fb114fc04ff6b37edef28e12b3
30837
30965
  handler: builtins.str,
30838
30966
  runtime: Runtime,
30839
30967
  adot_instrumentation: typing.Optional[typing.Union[AdotInstrumentationConfig, typing.Dict[builtins.str, typing.Any]]] = None,
30968
+ allow_all_ipv6_outbound: typing.Optional[builtins.bool] = None,
30840
30969
  allow_all_outbound: typing.Optional[builtins.bool] = None,
30841
30970
  allow_public_subnet: typing.Optional[builtins.bool] = None,
30842
30971
  application_log_level: typing.Optional[builtins.str] = None,
@@ -30981,6 +31110,7 @@ def _typecheckingstub__368a49fe1f866c7ea7986c57b6f8488d0fddea8f62bf05ec1ed7eb09b
30981
31110
  *,
30982
31111
  code: DockerImageCode,
30983
31112
  adot_instrumentation: typing.Optional[typing.Union[AdotInstrumentationConfig, typing.Dict[builtins.str, typing.Any]]] = None,
31113
+ allow_all_ipv6_outbound: typing.Optional[builtins.bool] = None,
30984
31114
  allow_all_outbound: typing.Optional[builtins.bool] = None,
30985
31115
  allow_public_subnet: typing.Optional[builtins.bool] = None,
30986
31116
  application_log_level: typing.Optional[builtins.str] = None,
@@ -1556,6 +1556,7 @@ class NodejsFunction(
1556
1556
  project_root: typing.Optional[builtins.str] = None,
1557
1557
  runtime: typing.Optional[_Runtime_b4eaa844] = None,
1558
1558
  adot_instrumentation: typing.Optional[typing.Union[_AdotInstrumentationConfig_7c38d65d, typing.Dict[builtins.str, typing.Any]]] = None,
1559
+ allow_all_ipv6_outbound: typing.Optional[builtins.bool] = None,
1559
1560
  allow_all_outbound: typing.Optional[builtins.bool] = None,
1560
1561
  allow_public_subnet: typing.Optional[builtins.bool] = None,
1561
1562
  application_log_level: typing.Optional[builtins.str] = None,
@@ -1616,7 +1617,8 @@ class NodejsFunction(
1616
1617
  :param project_root: The path to the directory containing project config files (``package.json`` or ``tsconfig.json``). Default: - the directory containing the ``depsLockFilePath``
1617
1618
  :param runtime: The runtime environment. Only runtimes of the Node.js family are supported. Default: ``Runtime.NODEJS_LATEST`` if the ``@aws-cdk/aws-lambda-nodejs:useLatestRuntimeVersion`` feature flag is enabled, otherwise ``Runtime.NODEJS_16_X``
1618
1619
  :param adot_instrumentation: Specify the configuration of AWS Distro for OpenTelemetry (ADOT) instrumentation. Default: - No ADOT instrumentation
1619
- :param allow_all_outbound: Whether to allow the Lambda to send all network traffic. If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllOutbound`` directly on the security group. Default: true
1620
+ :param allow_all_ipv6_outbound: Whether to allow the Lambda to send all ipv6 network traffic. If set to true, there will only be a single egress rule which allows all outbound ipv6 traffic. If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets using ipv6. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllIpv6Outbound`` directly on the security group. Default: false
1621
+ :param allow_all_outbound: Whether to allow the Lambda to send all network traffic (except ipv6). If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllOutbound`` directly on the security group. Default: true
1620
1622
  :param allow_public_subnet: Lambda Functions in a public subnet can NOT access the internet. Use this property to acknowledge this limitation and still place the function in a public subnet. Default: false
1621
1623
  :param application_log_level: (deprecated) Sets the application log level for the function. Default: "INFO"
1622
1624
  :param application_log_level_v2: Sets the application log level for the function. Default: ApplicationLogLevel.INFO
@@ -1678,6 +1680,7 @@ class NodejsFunction(
1678
1680
  project_root=project_root,
1679
1681
  runtime=runtime,
1680
1682
  adot_instrumentation=adot_instrumentation,
1683
+ allow_all_ipv6_outbound=allow_all_ipv6_outbound,
1681
1684
  allow_all_outbound=allow_all_outbound,
1682
1685
  allow_public_subnet=allow_public_subnet,
1683
1686
  application_log_level=application_log_level,
@@ -1739,6 +1742,7 @@ class NodejsFunction(
1739
1742
  "on_success": "onSuccess",
1740
1743
  "retry_attempts": "retryAttempts",
1741
1744
  "adot_instrumentation": "adotInstrumentation",
1745
+ "allow_all_ipv6_outbound": "allowAllIpv6Outbound",
1742
1746
  "allow_all_outbound": "allowAllOutbound",
1743
1747
  "allow_public_subnet": "allowPublicSubnet",
1744
1748
  "application_log_level": "applicationLogLevel",
@@ -1801,6 +1805,7 @@ class NodejsFunctionProps(_FunctionOptions_328f4d39):
1801
1805
  on_success: typing.Optional[_IDestination_40f19de4] = None,
1802
1806
  retry_attempts: typing.Optional[jsii.Number] = None,
1803
1807
  adot_instrumentation: typing.Optional[typing.Union[_AdotInstrumentationConfig_7c38d65d, typing.Dict[builtins.str, typing.Any]]] = None,
1808
+ allow_all_ipv6_outbound: typing.Optional[builtins.bool] = None,
1804
1809
  allow_all_outbound: typing.Optional[builtins.bool] = None,
1805
1810
  allow_public_subnet: typing.Optional[builtins.bool] = None,
1806
1811
  application_log_level: typing.Optional[builtins.str] = None,
@@ -1860,7 +1865,8 @@ class NodejsFunctionProps(_FunctionOptions_328f4d39):
1860
1865
  :param on_success: The destination for successful invocations. Default: - no destination
1861
1866
  :param retry_attempts: The maximum number of times to retry when the function returns an error. Minimum: 0 Maximum: 2 Default: 2
1862
1867
  :param adot_instrumentation: Specify the configuration of AWS Distro for OpenTelemetry (ADOT) instrumentation. Default: - No ADOT instrumentation
1863
- :param allow_all_outbound: Whether to allow the Lambda to send all network traffic. If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllOutbound`` directly on the security group. Default: true
1868
+ :param allow_all_ipv6_outbound: Whether to allow the Lambda to send all ipv6 network traffic. If set to true, there will only be a single egress rule which allows all outbound ipv6 traffic. If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets using ipv6. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllIpv6Outbound`` directly on the security group. Default: false
1869
+ :param allow_all_outbound: Whether to allow the Lambda to send all network traffic (except ipv6). If set to false, you must individually add traffic rules to allow the Lambda to connect to network targets. Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set. Instead, configure ``allowAllOutbound`` directly on the security group. Default: true
1864
1870
  :param allow_public_subnet: Lambda Functions in a public subnet can NOT access the internet. Use this property to acknowledge this limitation and still place the function in a public subnet. Default: false
1865
1871
  :param application_log_level: (deprecated) Sets the application log level for the function. Default: "INFO"
1866
1872
  :param application_log_level_v2: Sets the application log level for the function. Default: ApplicationLogLevel.INFO
@@ -1943,6 +1949,7 @@ class NodejsFunctionProps(_FunctionOptions_328f4d39):
1943
1949
  check_type(argname="argument on_success", value=on_success, expected_type=type_hints["on_success"])
1944
1950
  check_type(argname="argument retry_attempts", value=retry_attempts, expected_type=type_hints["retry_attempts"])
1945
1951
  check_type(argname="argument adot_instrumentation", value=adot_instrumentation, expected_type=type_hints["adot_instrumentation"])
1952
+ check_type(argname="argument allow_all_ipv6_outbound", value=allow_all_ipv6_outbound, expected_type=type_hints["allow_all_ipv6_outbound"])
1946
1953
  check_type(argname="argument allow_all_outbound", value=allow_all_outbound, expected_type=type_hints["allow_all_outbound"])
1947
1954
  check_type(argname="argument allow_public_subnet", value=allow_public_subnet, expected_type=type_hints["allow_public_subnet"])
1948
1955
  check_type(argname="argument application_log_level", value=application_log_level, expected_type=type_hints["application_log_level"])
@@ -2005,6 +2012,8 @@ class NodejsFunctionProps(_FunctionOptions_328f4d39):
2005
2012
  self._values["retry_attempts"] = retry_attempts
2006
2013
  if adot_instrumentation is not None:
2007
2014
  self._values["adot_instrumentation"] = adot_instrumentation
2015
+ if allow_all_ipv6_outbound is not None:
2016
+ self._values["allow_all_ipv6_outbound"] = allow_all_ipv6_outbound
2008
2017
  if allow_all_outbound is not None:
2009
2018
  self._values["allow_all_outbound"] = allow_all_outbound
2010
2019
  if allow_public_subnet is not None:
@@ -2163,9 +2172,25 @@ class NodejsFunctionProps(_FunctionOptions_328f4d39):
2163
2172
  result = self._values.get("adot_instrumentation")
2164
2173
  return typing.cast(typing.Optional[_AdotInstrumentationConfig_7c38d65d], result)
2165
2174
 
2175
+ @builtins.property
2176
+ def allow_all_ipv6_outbound(self) -> typing.Optional[builtins.bool]:
2177
+ '''Whether to allow the Lambda to send all ipv6 network traffic.
2178
+
2179
+ If set to true, there will only be a single egress rule which allows all
2180
+ outbound ipv6 traffic. If set to false, you must individually add traffic rules to allow the
2181
+ Lambda to connect to network targets using ipv6.
2182
+
2183
+ Do not specify this property if the ``securityGroups`` or ``securityGroup`` property is set.
2184
+ Instead, configure ``allowAllIpv6Outbound`` directly on the security group.
2185
+
2186
+ :default: false
2187
+ '''
2188
+ result = self._values.get("allow_all_ipv6_outbound")
2189
+ return typing.cast(typing.Optional[builtins.bool], result)
2190
+
2166
2191
  @builtins.property
2167
2192
  def allow_all_outbound(self) -> typing.Optional[builtins.bool]:
2168
- '''Whether to allow the Lambda to send all network traffic.
2193
+ '''Whether to allow the Lambda to send all network traffic (except ipv6).
2169
2194
 
2170
2195
  If set to false, you must individually add traffic rules to allow the
2171
2196
  Lambda to connect to network targets.
@@ -3006,6 +3031,7 @@ def _typecheckingstub__ece177829b26ef102d4080d730f168e29d7d310d1518738839cd3fc82
3006
3031
  project_root: typing.Optional[builtins.str] = None,
3007
3032
  runtime: typing.Optional[_Runtime_b4eaa844] = None,
3008
3033
  adot_instrumentation: typing.Optional[typing.Union[_AdotInstrumentationConfig_7c38d65d, typing.Dict[builtins.str, typing.Any]]] = None,
3034
+ allow_all_ipv6_outbound: typing.Optional[builtins.bool] = None,
3009
3035
  allow_all_outbound: typing.Optional[builtins.bool] = None,
3010
3036
  allow_public_subnet: typing.Optional[builtins.bool] = None,
3011
3037
  application_log_level: typing.Optional[builtins.str] = None,
@@ -3064,6 +3090,7 @@ def _typecheckingstub__2da45b394f0332be0f6d6b7468d9fb54961953d56265da69955d36ffa
3064
3090
  on_success: typing.Optional[_IDestination_40f19de4] = None,
3065
3091
  retry_attempts: typing.Optional[jsii.Number] = None,
3066
3092
  adot_instrumentation: typing.Optional[typing.Union[_AdotInstrumentationConfig_7c38d65d, typing.Dict[builtins.str, typing.Any]]] = None,
3093
+ allow_all_ipv6_outbound: typing.Optional[builtins.bool] = None,
3067
3094
  allow_all_outbound: typing.Optional[builtins.bool] = None,
3068
3095
  allow_public_subnet: typing.Optional[builtins.bool] = None,
3069
3096
  application_log_level: typing.Optional[builtins.str] = None,