aws-cdk-lib 2.140.0__py3-none-any.whl → 2.142.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 +9 -1
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.140.0.jsii.tgz → aws-cdk-lib@2.142.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_appsync/__init__.py +224 -94
  5. aws_cdk/aws_autoscaling/__init__.py +109 -25
  6. aws_cdk/aws_bedrock/__init__.py +51 -41
  7. aws_cdk/aws_cloudfront/__init__.py +34 -78
  8. aws_cdk/aws_cloudtrail/__init__.py +13 -4
  9. aws_cdk/aws_codepipeline/__init__.py +364 -27
  10. aws_cdk/aws_connectcampaigns/__init__.py +2 -2
  11. aws_cdk/aws_datasync/__init__.py +51 -56
  12. aws_cdk/aws_docdb/__init__.py +181 -4
  13. aws_cdk/aws_dynamodb/__init__.py +410 -0
  14. aws_cdk/aws_ec2/__init__.py +91 -42
  15. aws_cdk/aws_ecr/__init__.py +32 -7
  16. aws_cdk/aws_ecs/__init__.py +65 -18
  17. aws_cdk/aws_eks/__init__.py +36 -3
  18. aws_cdk/aws_entityresolution/__init__.py +6 -2
  19. aws_cdk/aws_events/__init__.py +46 -25
  20. aws_cdk/aws_events_targets/__init__.py +341 -0
  21. aws_cdk/aws_fms/__init__.py +7 -7
  22. aws_cdk/aws_gamelift/__init__.py +261 -160
  23. aws_cdk/aws_iam/__init__.py +13 -8
  24. aws_cdk/aws_ivs/__init__.py +1 -3
  25. aws_cdk/aws_kms/__init__.py +11 -5
  26. aws_cdk/aws_lambda_nodejs/__init__.py +3 -0
  27. aws_cdk/aws_location/__init__.py +8 -4
  28. aws_cdk/aws_logs/__init__.py +6 -6
  29. aws_cdk/aws_oam/__init__.py +45 -11
  30. aws_cdk/aws_omics/__init__.py +4 -4
  31. aws_cdk/aws_paymentcryptography/__init__.py +128 -48
  32. aws_cdk/aws_pinpoint/__init__.py +7 -5
  33. aws_cdk/aws_qbusiness/__init__.py +620 -294
  34. aws_cdk/aws_quicksight/__init__.py +103 -40
  35. aws_cdk/aws_rds/__init__.py +80 -16
  36. aws_cdk/aws_route53profiles/__init__.py +49 -49
  37. aws_cdk/aws_s3/__init__.py +9 -2
  38. aws_cdk/aws_sagemaker/__init__.py +30 -30
  39. aws_cdk/aws_servicecatalog/__init__.py +27 -4
  40. aws_cdk/aws_ses/__init__.py +9 -9
  41. aws_cdk/aws_stepfunctions_tasks/__init__.py +7 -6
  42. aws_cdk/aws_transfer/__init__.py +4 -4
  43. aws_cdk/aws_voiceid/__init__.py +2 -2
  44. {aws_cdk_lib-2.140.0.dist-info → aws_cdk_lib-2.142.0.dist-info}/METADATA +10 -2
  45. {aws_cdk_lib-2.140.0.dist-info → aws_cdk_lib-2.142.0.dist-info}/RECORD +49 -49
  46. {aws_cdk_lib-2.140.0.dist-info → aws_cdk_lib-2.142.0.dist-info}/LICENSE +0 -0
  47. {aws_cdk_lib-2.140.0.dist-info → aws_cdk_lib-2.142.0.dist-info}/NOTICE +0 -0
  48. {aws_cdk_lib-2.140.0.dist-info → aws_cdk_lib-2.142.0.dist-info}/WHEEL +0 -0
  49. {aws_cdk_lib-2.140.0.dist-info → aws_cdk_lib-2.142.0.dist-info}/top_level.txt +0 -0
@@ -10723,16 +10723,21 @@ class RoleProps:
10723
10723
 
10724
10724
  Example::
10725
10725
 
10726
- # definition: sfn.IChainable
10727
- role = iam.Role(self, "Role",
10728
- assumed_by=iam.ServicePrincipal("lambda.amazonaws.com")
10729
- )
10730
- state_machine = sfn.StateMachine(self, "StateMachine",
10731
- definition_body=sfn.DefinitionBody.from_chainable(definition)
10726
+ # Option 3: Create a new role that allows the account root principal to assume. Add this role in the `system:masters` and witch to this role from the AWS console.
10727
+ # cluster: eks.Cluster
10728
+
10729
+
10730
+ console_read_only_role = iam.Role(self, "ConsoleReadOnlyRole",
10731
+ assumed_by=iam.ArnPrincipal("arn_for_trusted_principal")
10732
10732
  )
10733
+ console_read_only_role.add_to_policy(iam.PolicyStatement(
10734
+ actions=["eks:AccessKubernetesApi", "eks:Describe*", "eks:List*"
10735
+ ],
10736
+ resources=[cluster.cluster_arn]
10737
+ ))
10733
10738
 
10734
- # Give role permission to get execution history of ALL executions for the state machine
10735
- state_machine.grant_execution(role, "states:GetExecutionHistory")
10739
+ # Add this role to system:masters RBAC group
10740
+ cluster.aws_auth.add_masters_role(console_read_only_role)
10736
10741
  '''
10737
10742
  if __debug__:
10738
10743
  type_hints = typing.get_type_hints(_typecheckingstub__9c9223cb9fa6dff45ee4fd7013629ab18542c2499a83f542c5405968fad2287c)
@@ -1980,7 +1980,7 @@ class CfnRecordingConfiguration(
1980
1980
  :param recording_mode: Thumbnail recording mode. Valid values:. - ``DISABLED`` : Use DISABLED to disable the generation of thumbnails for recorded video. - ``INTERVAL`` : Use INTERVAL to enable the generation of thumbnails for recorded video at a time interval controlled by the `TargetIntervalSeconds <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ivs-recordingconfiguration-thumbnailconfiguration.html#cfn-ivs-recordingconfiguration-thumbnailconfiguration-targetintervalseconds>`_ property. *Default* : ``INTERVAL`` Default: - "INTERVAL"
1981
1981
  :param resolution: The desired resolution of recorded thumbnails for a stream. Thumbnails are recorded at the selected resolution if the corresponding rendition is available during the stream; otherwise, they are recorded at source resolution. For more information about resolution values and their corresponding height and width dimensions, see `Auto-Record to Amazon S3 <https://docs.aws.amazon.com//ivs/latest/LowLatencyUserGuide/record-to-s3.html>`_ .
1982
1982
  :param storage: The format in which thumbnails are recorded for a stream. ``SEQUENTIAL`` records all generated thumbnails in a serial manner, to the media/thumbnails directory. ``LATEST`` saves the latest thumbnail in media/thumbnails/latest/thumb.jpg and overwrites it at the interval specified by ``targetIntervalSeconds`` . You can enable both ``SEQUENTIAL`` and ``LATEST`` . Default: ``SEQUENTIAL`` .
1983
- :param target_interval_seconds: The targeted thumbnail-generation interval in seconds. This is configurable (and required) only if `RecordingMode <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ivs-recordingconfiguration-thumbnailconfiguration.html#cfn-ivs-recordingconfiguration-thumbnailconfiguration-recordingmode>`_ is ``INTERVAL`` . .. epigraph:: Setting a value for ``TargetIntervalSeconds`` does not guarantee that thumbnails are generated at the specified interval. For thumbnails to be generated at the ``TargetIntervalSeconds`` interval, the ``IDR/Keyframe`` value for the input video must be less than the ``TargetIntervalSeconds`` value. See `Amazon IVS Streaming Configuration <https://docs.aws.amazon.com/ivs/latest/LowLatencyUserGuide/streaming-config.html>`_ for information on setting ``IDR/Keyframe`` to the recommended value in video-encoder settings. *Default* : 60 *Valid Range* : Minumum value of 1. Maximum value of 60. Default: - 60
1983
+ :param target_interval_seconds: The targeted thumbnail-generation interval in seconds. This is configurable (and required) only if `RecordingMode <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ivs-recordingconfiguration-thumbnailconfiguration.html#cfn-ivs-recordingconfiguration-thumbnailconfiguration-recordingmode>`_ is ``INTERVAL`` . .. epigraph:: Setting a value for ``TargetIntervalSeconds`` does not guarantee that thumbnails are generated at the specified interval. For thumbnails to be generated at the ``TargetIntervalSeconds`` interval, the ``IDR/Keyframe`` value for the input video must be less than the ``TargetIntervalSeconds`` value. See `Amazon IVS Streaming Configuration <https://docs.aws.amazon.com/ivs/latest/LowLatencyUserGuide/streaming-config.html>`_ for information on setting ``IDR/Keyframe`` to the recommended value in video-encoder settings. *Default* : 60 Default: - 60
1984
1984
 
1985
1985
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ivs-recordingconfiguration-thumbnailconfiguration.html
1986
1986
  :exampleMetadata: fixture=_generated
@@ -2062,8 +2062,6 @@ class CfnRecordingConfiguration(
2062
2062
 
2063
2063
  *Default* : 60
2064
2064
 
2065
- *Valid Range* : Minumum value of 1. Maximum value of 60.
2066
-
2067
2065
  :default: - 60
2068
2066
 
2069
2067
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ivs-recordingconfiguration-thumbnailconfiguration.html#cfn-ivs-recordingconfiguration-thumbnailconfiguration-targetintervalseconds
@@ -737,7 +737,7 @@ class CfnKey(
737
737
  :param multi_region: Creates a multi-Region primary key that you can replicate in other AWS Regions . You can't change the ``MultiRegion`` value after the KMS key is created. For a list of AWS Regions in which multi-Region keys are supported, see `Multi-Region keys in AWS KMS <https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html>`_ in the ** . .. epigraph:: If you change the value of the ``MultiRegion`` property on an existing KMS key, the update request fails, regardless of the value of the ```UpdateReplacePolicy`` attribute <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html>`_ . This prevents you from accidentally deleting a KMS key by changing an immutable property value. For a multi-Region key, set to this property to ``true`` . For a single-Region key, omit this property or set it to ``false`` . The default value is ``false`` . *Multi-Region keys* are an AWS KMS feature that lets you create multiple interoperable KMS keys in different AWS Regions . Because these KMS keys have the same key ID, key material, and other metadata, you can use them to encrypt data in one AWS Region and decrypt it in a different AWS Region without making a cross-Region call or exposing the plaintext data. For more information, see `Multi-Region keys <https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html>`_ in the *AWS Key Management Service Developer Guide* . You can create a symmetric encryption, HMAC, or asymmetric multi-Region KMS key, and you can create a multi-Region key with imported key material. However, you cannot create a multi-Region key in a custom key store. To create a replica of this primary key in a different AWS Region , create an `AWS::KMS::ReplicaKey <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-replicakey.html>`_ resource in a CloudFormation stack in the replica Region. Specify the key ARN of this primary key. Default: - false
738
738
  :param origin: The source of the key material for the KMS key. You cannot change the origin after you create the KMS key. The default is ``AWS_KMS`` , which means that AWS KMS creates the key material. To `create a KMS key with no key material <https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-create-cmk.html>`_ (for imported key material), set this value to ``EXTERNAL`` . For more information about importing key material into AWS KMS , see `Importing Key Material <https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html>`_ in the *AWS Key Management Service Developer Guide* . You can ignore ``ENABLED`` when Origin is ``EXTERNAL`` . When a KMS key with Origin ``EXTERNAL`` is created, the key state is ``PENDING_IMPORT`` and ``ENABLED`` is ``false`` . After you import the key material, ``ENABLED`` updated to ``true`` . The KMS key can then be used for Cryptographic Operations. .. epigraph:: AWS CloudFormation doesn't support creating an ``Origin`` parameter of the ``AWS_CLOUDHSM`` or ``EXTERNAL_KEY_STORE`` values. Default: - "AWS_KMS"
739
739
  :param pending_window_in_days: Specifies the number of days in the waiting period before AWS KMS deletes a KMS key that has been removed from a CloudFormation stack. Enter a value between 7 and 30 days. The default value is 30 days. When you remove a KMS key from a CloudFormation stack, AWS KMS schedules the KMS key for deletion and starts the mandatory waiting period. The ``PendingWindowInDays`` property determines the length of waiting period. During the waiting period, the key state of KMS key is ``Pending Deletion`` or ``Pending Replica Deletion`` , which prevents the KMS key from being used in cryptographic operations. When the waiting period expires, AWS KMS permanently deletes the KMS key. AWS KMS will not delete a `multi-Region primary key <https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html>`_ that has replica keys. If you remove a multi-Region primary key from a CloudFormation stack, its key state changes to ``PendingReplicaDeletion`` so it cannot be replicated or used in cryptographic operations. This state can persist indefinitely. When the last of its replica keys is deleted, the key state of the primary key changes to ``PendingDeletion`` and the waiting period specified by ``PendingWindowInDays`` begins. When this waiting period expires, AWS KMS deletes the primary key. For details, see `Deleting multi-Region keys <https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-delete.html>`_ in the *AWS Key Management Service Developer Guide* . You cannot use a CloudFormation template to cancel deletion of the KMS key after you remove it from the stack, regardless of the waiting period. If you specify a KMS key in your template, even one with the same name, CloudFormation creates a new KMS key. To cancel deletion of a KMS key, use the AWS KMS console or the `CancelKeyDeletion <https://docs.aws.amazon.com/kms/latest/APIReference/API_CancelKeyDeletion.html>`_ operation. For information about the ``Pending Deletion`` and ``Pending Replica Deletion`` key states, see `Key state: Effect on your KMS key <https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html>`_ in the *AWS Key Management Service Developer Guide* . For more information about deleting KMS keys, see the `ScheduleKeyDeletion <https://docs.aws.amazon.com/kms/latest/APIReference/API_ScheduleKeyDeletion.html>`_ operation in the *AWS Key Management Service API Reference* and `Deleting KMS keys <https://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys.html>`_ in the *AWS Key Management Service Developer Guide* .
740
- :param rotation_period_in_days: The number of days between each automatic rotation. The default value is 365 days. Default: - 365
740
+ :param rotation_period_in_days: Specifies a custom period of time between each rotation date. If no value is specified, the default value is 365 days. The rotation period defines the number of days after you enable automatic key rotation that AWS KMS will rotate your key material, and the number of days between each automatic rotation thereafter. You can use the ```kms:RotationPeriodInDays`` <https://docs.aws.amazon.com/kms/latest/developerguide/conditions-kms.html#conditions-kms-rotation-period-in-days>`_ condition key to further constrain the values that principals can specify in the ``RotationPeriodInDays`` parameter. For more information about rotating KMS keys and automatic rotation, see `Rotating keys <https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html>`_ in the *AWS Key Management Service Developer Guide* . Default: - 365
741
741
  :param tags: Assigns one or more tags to the replica key. .. epigraph:: Tagging or untagging a KMS key can allow or deny permission to the KMS key. For details, see `ABAC for AWS KMS <https://docs.aws.amazon.com/kms/latest/developerguide/abac.html>`_ in the *AWS Key Management Service Developer Guide* . For information about tags in AWS KMS , see `Tagging keys <https://docs.aws.amazon.com/kms/latest/developerguide/tagging-keys.html>`_ in the *AWS Key Management Service Developer Guide* . For information about tags in CloudFormation, see `Tag <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html>`_ .
742
742
  '''
743
743
  if __debug__:
@@ -983,7 +983,7 @@ class CfnKey(
983
983
  @builtins.property
984
984
  @jsii.member(jsii_name="rotationPeriodInDays")
985
985
  def rotation_period_in_days(self) -> typing.Optional[jsii.Number]:
986
- '''The number of days between each automatic rotation.'''
986
+ '''Specifies a custom period of time between each rotation date.'''
987
987
  return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "rotationPeriodInDays"))
988
988
 
989
989
  @rotation_period_in_days.setter
@@ -1054,7 +1054,7 @@ class CfnKeyProps:
1054
1054
  :param multi_region: Creates a multi-Region primary key that you can replicate in other AWS Regions . You can't change the ``MultiRegion`` value after the KMS key is created. For a list of AWS Regions in which multi-Region keys are supported, see `Multi-Region keys in AWS KMS <https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html>`_ in the ** . .. epigraph:: If you change the value of the ``MultiRegion`` property on an existing KMS key, the update request fails, regardless of the value of the ```UpdateReplacePolicy`` attribute <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html>`_ . This prevents you from accidentally deleting a KMS key by changing an immutable property value. For a multi-Region key, set to this property to ``true`` . For a single-Region key, omit this property or set it to ``false`` . The default value is ``false`` . *Multi-Region keys* are an AWS KMS feature that lets you create multiple interoperable KMS keys in different AWS Regions . Because these KMS keys have the same key ID, key material, and other metadata, you can use them to encrypt data in one AWS Region and decrypt it in a different AWS Region without making a cross-Region call or exposing the plaintext data. For more information, see `Multi-Region keys <https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html>`_ in the *AWS Key Management Service Developer Guide* . You can create a symmetric encryption, HMAC, or asymmetric multi-Region KMS key, and you can create a multi-Region key with imported key material. However, you cannot create a multi-Region key in a custom key store. To create a replica of this primary key in a different AWS Region , create an `AWS::KMS::ReplicaKey <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-replicakey.html>`_ resource in a CloudFormation stack in the replica Region. Specify the key ARN of this primary key. Default: - false
1055
1055
  :param origin: The source of the key material for the KMS key. You cannot change the origin after you create the KMS key. The default is ``AWS_KMS`` , which means that AWS KMS creates the key material. To `create a KMS key with no key material <https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-create-cmk.html>`_ (for imported key material), set this value to ``EXTERNAL`` . For more information about importing key material into AWS KMS , see `Importing Key Material <https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html>`_ in the *AWS Key Management Service Developer Guide* . You can ignore ``ENABLED`` when Origin is ``EXTERNAL`` . When a KMS key with Origin ``EXTERNAL`` is created, the key state is ``PENDING_IMPORT`` and ``ENABLED`` is ``false`` . After you import the key material, ``ENABLED`` updated to ``true`` . The KMS key can then be used for Cryptographic Operations. .. epigraph:: AWS CloudFormation doesn't support creating an ``Origin`` parameter of the ``AWS_CLOUDHSM`` or ``EXTERNAL_KEY_STORE`` values. Default: - "AWS_KMS"
1056
1056
  :param pending_window_in_days: Specifies the number of days in the waiting period before AWS KMS deletes a KMS key that has been removed from a CloudFormation stack. Enter a value between 7 and 30 days. The default value is 30 days. When you remove a KMS key from a CloudFormation stack, AWS KMS schedules the KMS key for deletion and starts the mandatory waiting period. The ``PendingWindowInDays`` property determines the length of waiting period. During the waiting period, the key state of KMS key is ``Pending Deletion`` or ``Pending Replica Deletion`` , which prevents the KMS key from being used in cryptographic operations. When the waiting period expires, AWS KMS permanently deletes the KMS key. AWS KMS will not delete a `multi-Region primary key <https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html>`_ that has replica keys. If you remove a multi-Region primary key from a CloudFormation stack, its key state changes to ``PendingReplicaDeletion`` so it cannot be replicated or used in cryptographic operations. This state can persist indefinitely. When the last of its replica keys is deleted, the key state of the primary key changes to ``PendingDeletion`` and the waiting period specified by ``PendingWindowInDays`` begins. When this waiting period expires, AWS KMS deletes the primary key. For details, see `Deleting multi-Region keys <https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-delete.html>`_ in the *AWS Key Management Service Developer Guide* . You cannot use a CloudFormation template to cancel deletion of the KMS key after you remove it from the stack, regardless of the waiting period. If you specify a KMS key in your template, even one with the same name, CloudFormation creates a new KMS key. To cancel deletion of a KMS key, use the AWS KMS console or the `CancelKeyDeletion <https://docs.aws.amazon.com/kms/latest/APIReference/API_CancelKeyDeletion.html>`_ operation. For information about the ``Pending Deletion`` and ``Pending Replica Deletion`` key states, see `Key state: Effect on your KMS key <https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html>`_ in the *AWS Key Management Service Developer Guide* . For more information about deleting KMS keys, see the `ScheduleKeyDeletion <https://docs.aws.amazon.com/kms/latest/APIReference/API_ScheduleKeyDeletion.html>`_ operation in the *AWS Key Management Service API Reference* and `Deleting KMS keys <https://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys.html>`_ in the *AWS Key Management Service Developer Guide* .
1057
- :param rotation_period_in_days: The number of days between each automatic rotation. The default value is 365 days. Default: - 365
1057
+ :param rotation_period_in_days: Specifies a custom period of time between each rotation date. If no value is specified, the default value is 365 days. The rotation period defines the number of days after you enable automatic key rotation that AWS KMS will rotate your key material, and the number of days between each automatic rotation thereafter. You can use the ```kms:RotationPeriodInDays`` <https://docs.aws.amazon.com/kms/latest/developerguide/conditions-kms.html#conditions-kms-rotation-period-in-days>`_ condition key to further constrain the values that principals can specify in the ``RotationPeriodInDays`` parameter. For more information about rotating KMS keys and automatic rotation, see `Rotating keys <https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html>`_ in the *AWS Key Management Service Developer Guide* . Default: - 365
1058
1058
  :param tags: Assigns one or more tags to the replica key. .. epigraph:: Tagging or untagging a KMS key can allow or deny permission to the KMS key. For details, see `ABAC for AWS KMS <https://docs.aws.amazon.com/kms/latest/developerguide/abac.html>`_ in the *AWS Key Management Service Developer Guide* . For information about tags in AWS KMS , see `Tagging keys <https://docs.aws.amazon.com/kms/latest/developerguide/tagging-keys.html>`_ in the *AWS Key Management Service Developer Guide* . For information about tags in CloudFormation, see `Tag <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html>`_ .
1059
1059
 
1060
1060
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html
@@ -1352,9 +1352,15 @@ class CfnKeyProps:
1352
1352
 
1353
1353
  @builtins.property
1354
1354
  def rotation_period_in_days(self) -> typing.Optional[jsii.Number]:
1355
- '''The number of days between each automatic rotation.
1355
+ '''Specifies a custom period of time between each rotation date.
1356
1356
 
1357
- The default value is 365 days.
1357
+ If no value is specified, the default value is 365 days.
1358
+
1359
+ The rotation period defines the number of days after you enable automatic key rotation that AWS KMS will rotate your key material, and the number of days between each automatic rotation thereafter.
1360
+
1361
+ You can use the ```kms:RotationPeriodInDays`` <https://docs.aws.amazon.com/kms/latest/developerguide/conditions-kms.html#conditions-kms-rotation-period-in-days>`_ condition key to further constrain the values that principals can specify in the ``RotationPeriodInDays`` parameter.
1362
+
1363
+ For more information about rotating KMS keys and automatic rotation, see `Rotating keys <https://docs.aws.amazon.com/kms/latest/developerguide/rotate-keys.html>`_ in the *AWS Key Management Service Developer Guide* .
1358
1364
 
1359
1365
  :default: - 365
1360
1366
 
@@ -157,6 +157,9 @@ environment.
157
157
  When passing a runtime that is known to include a version of the aws sdk, it will be excluded by default. For example, when
158
158
  passing `NODEJS_16_X`, `aws-sdk` is excluded. When passing `NODEJS_18_X`, all `@aws-sdk/*` packages are excluded.
159
159
 
160
+ > [!WARNING]
161
+ > The NodeJS runtime of Node 16 will be deprecated by Lambda on June 12, 2024. Lambda runtimes Node 18 and higher include SDKv3 and not SDKv2. Updating your Lambda runtime from <=Node 16 to any newer version will require bundling the SDK with your handler code, or updating all SDK calls in your handler code to use SDKv3 (which is not a trivial update). Please account for this added complexity and update as soon as possible.
162
+
160
163
  This can be configured by specifying `bundling.externalModules`:
161
164
 
162
165
  ```python
@@ -742,7 +742,7 @@ class CfnGeofenceCollection(
742
742
  :param description: An optional description for the geofence collection.
743
743
  :param kms_key_id: A key identifier for an `AWS KMS customer managed key <https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html>`_ . Enter a key ID, key ARN, alias name, or alias ARN.
744
744
  :param pricing_plan:
745
- :param pricing_plan_data_source:
745
+ :param pricing_plan_data_source: (deprecated) This shape is deprecated since 2022-02-01: Deprecated. No longer allowed.
746
746
  :param tags: Applies one or more tags to the geofence collection. A tag is a key-value pair helps manage, identify, search, and filter your resources by labelling them. Format: ``"key" : "value"`` Restrictions: - Maximum 50 tags per resource - Each resource tag must be unique with a maximum of one value. - Maximum key length: 128 Unicode characters in UTF-8 - Maximum value length: 256 Unicode characters in UTF-8 - Can use alphanumeric characters (A–Z, a–z, 0–9), and the following characters: + - = . _ : /
747
747
  '''
748
748
  if __debug__:
@@ -904,7 +904,8 @@ class CfnGeofenceCollection(
904
904
  @builtins.property
905
905
  @jsii.member(jsii_name="pricingPlanDataSource")
906
906
  def pricing_plan_data_source(self) -> typing.Optional[builtins.str]:
907
- '''
907
+ '''(deprecated) This shape is deprecated since 2022-02-01: Deprecated.
908
+
908
909
  :deprecated: this property has been deprecated
909
910
 
910
911
  :stability: deprecated
@@ -961,7 +962,7 @@ class CfnGeofenceCollectionProps:
961
962
  :param description: An optional description for the geofence collection.
962
963
  :param kms_key_id: A key identifier for an `AWS KMS customer managed key <https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html>`_ . Enter a key ID, key ARN, alias name, or alias ARN.
963
964
  :param pricing_plan:
964
- :param pricing_plan_data_source:
965
+ :param pricing_plan_data_source: (deprecated) This shape is deprecated since 2022-02-01: Deprecated. No longer allowed.
965
966
  :param tags: Applies one or more tags to the geofence collection. A tag is a key-value pair helps manage, identify, search, and filter your resources by labelling them. Format: ``"key" : "value"`` Restrictions: - Maximum 50 tags per resource - Each resource tag must be unique with a maximum of one value. - Maximum key length: 128 Unicode characters in UTF-8 - Maximum value length: 256 Unicode characters in UTF-8 - Can use alphanumeric characters (A–Z, a–z, 0–9), and the following characters: + - = . _ : /
966
967
 
967
968
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-geofencecollection.html
@@ -1056,7 +1057,10 @@ class CfnGeofenceCollectionProps:
1056
1057
 
1057
1058
  @builtins.property
1058
1059
  def pricing_plan_data_source(self) -> typing.Optional[builtins.str]:
1059
- '''
1060
+ '''(deprecated) This shape is deprecated since 2022-02-01: Deprecated.
1061
+
1062
+ No longer allowed.
1063
+
1060
1064
  :deprecated: this property has been deprecated
1061
1065
 
1062
1066
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-location-geofencecollection.html#cfn-location-geofencecollection-pricingplandatasource
@@ -69,7 +69,7 @@ log_group = logs.LogGroup(self, "LogGroup")
69
69
  log_group.grant_write(iam.ServicePrincipal("es.amazonaws.com"))
70
70
  ```
71
71
 
72
- Similarily, read permissions can be granted to the log group as follows.
72
+ Similarly, read permissions can be granted to the log group as follows.
73
73
 
74
74
  ```python
75
75
  log_group = logs.LogGroup(self, "LogGroup")
@@ -6018,7 +6018,7 @@ class LogGroup(
6018
6018
  :param scope: -
6019
6019
  :param id: -
6020
6020
  :param data_protection_policy: Data Protection Policy for this log group. Default: - no data protection policy
6021
- :param encryption_key: The KMS customer managed key to encrypt the log group with. Default: Server-side encrpytion managed by the CloudWatch Logs service
6021
+ :param encryption_key: The KMS customer managed key to encrypt the log group with. Default: Server-side encryption managed by the CloudWatch Logs service
6022
6022
  :param log_group_class: The class of the log group. Possible values are: STANDARD and INFREQUENT_ACCESS. INFREQUENT_ACCESS class provides customers a cost-effective way to consolidate logs which supports querying using Logs Insights. The logGroupClass property cannot be changed once the log group is created. Default: LogGroupClass.STANDARD
6023
6023
  :param log_group_name: Name of the log group. Default: Automatically generated
6024
6024
  :param removal_policy: Determine the removal policy of this log group. Normally you want to retain the log group so you can diagnose issues from logs even after a deployment that no longer includes the log group. In that case, use the normal date-based retention policy to age out your logs. Default: RemovalPolicy.Retain
@@ -6312,7 +6312,7 @@ class LogGroupProps:
6312
6312
  '''Properties for a LogGroup.
6313
6313
 
6314
6314
  :param data_protection_policy: Data Protection Policy for this log group. Default: - no data protection policy
6315
- :param encryption_key: The KMS customer managed key to encrypt the log group with. Default: Server-side encrpytion managed by the CloudWatch Logs service
6315
+ :param encryption_key: The KMS customer managed key to encrypt the log group with. Default: Server-side encryption managed by the CloudWatch Logs service
6316
6316
  :param log_group_class: The class of the log group. Possible values are: STANDARD and INFREQUENT_ACCESS. INFREQUENT_ACCESS class provides customers a cost-effective way to consolidate logs which supports querying using Logs Insights. The logGroupClass property cannot be changed once the log group is created. Default: LogGroupClass.STANDARD
6317
6317
  :param log_group_name: Name of the log group. Default: Automatically generated
6318
6318
  :param removal_policy: Determine the removal policy of this log group. Normally you want to retain the log group so you can diagnose issues from logs even after a deployment that no longer includes the log group. In that case, use the normal date-based retention policy to age out your logs. Default: RemovalPolicy.Retain
@@ -6386,7 +6386,7 @@ class LogGroupProps:
6386
6386
  def encryption_key(self) -> typing.Optional[_IKey_5f11635f]:
6387
6387
  '''The KMS customer managed key to encrypt the log group with.
6388
6388
 
6389
- :default: Server-side encrpytion managed by the CloudWatch Logs service
6389
+ :default: Server-side encryption managed by the CloudWatch Logs service
6390
6390
  '''
6391
6391
  result = self._values.get("encryption_key")
6392
6392
  return typing.cast(typing.Optional[_IKey_5f11635f], result)
@@ -8701,7 +8701,7 @@ class CustomDataIdentifier(
8701
8701
  '''Create a custom data identifier.
8702
8702
 
8703
8703
  :param name: - the name of the custom data identifier. This cannot share the same name as a managed data identifier.
8704
- :param regex: - the regular expresssion to detect and mask log events for.
8704
+ :param regex: - the regular expression to detect and mask log events for.
8705
8705
  '''
8706
8706
  if __debug__:
8707
8707
  type_hints = typing.get_type_hints(_typecheckingstub__8962f986463b4e81629495838f26c8990feeca56061597cb66e94771b4cfb79d)
@@ -8729,7 +8729,7 @@ class CustomDataIdentifier(
8729
8729
  @builtins.property
8730
8730
  @jsii.member(jsii_name="regex")
8731
8731
  def regex(self) -> builtins.str:
8732
- '''- the regular expresssion to detect and mask log events for.'''
8732
+ '''- the regular expression to detect and mask log events for.'''
8733
8733
  return typing.cast(builtins.str, jsii.get(self, "regex"))
8734
8734
 
8735
8735
 
@@ -116,7 +116,7 @@ class CfnLink(
116
116
  :param resource_types: An array of strings that define which types of data that the source account shares with the monitoring account. Valid values are ``AWS::CloudWatch::Metric | AWS::Logs::LogGroup | AWS::XRay::Trace | AWS::ApplicationInsights::Application | AWS::InternetMonitor::Monitor`` .
117
117
  :param sink_identifier: The ARN of the sink in the monitoring account that you want to link to. You can use `ListSinks <https://docs.aws.amazon.com/OAM/latest/APIReference/API_ListSinks.html>`_ to find the ARNs of sinks.
118
118
  :param label_template: Specify a friendly human-readable name to use to identify this source account when you are viewing data from it in the monitoring account. You can include the following variables in your template: - ``$AccountName`` is the name of the account - ``$AccountEmail`` is a globally-unique email address, which includes the email domain, such as ``mariagarcia@example.com`` - ``$AccountEmailNoDomain`` is an email address without the domain name, such as ``mariagarcia``
119
- :param link_configuration:
119
+ :param link_configuration: Use this structure to optionally create filters that specify that only some metric namespaces or log groups are to be shared from the source account to the monitoring account.
120
120
  :param tags: An array of key-value pairs to apply to the link. For more information, see `Tag <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html>`_ .
121
121
  '''
122
122
  if __debug__:
@@ -240,6 +240,7 @@ class CfnLink(
240
240
  def link_configuration(
241
241
  self,
242
242
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLink.LinkConfigurationProperty"]]:
243
+ '''Use this structure to optionally create filters that specify that only some metric namespaces or log groups are to be shared from the source account to the monitoring account.'''
243
244
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLink.LinkConfigurationProperty"]], jsii.get(self, "linkConfiguration"))
244
245
 
245
246
  @link_configuration.setter
@@ -283,9 +284,10 @@ class CfnLink(
283
284
  log_group_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnLink.LinkFilterProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
284
285
  metric_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnLink.LinkFilterProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
285
286
  ) -> None:
286
- '''
287
- :param log_group_configuration:
288
- :param metric_configuration:
287
+ '''Use this structure to optionally create filters that specify that only some metric namespaces or log groups are to be shared from the source account to the monitoring account.
288
+
289
+ :param log_group_configuration: Use this structure to filter which log groups are to share log events from this source account to the monitoring account.
290
+ :param metric_configuration: Use this structure to filter which metric namespaces are to be shared from the source account to the monitoring account.
289
291
 
290
292
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-oam-link-linkconfiguration.html
291
293
  :exampleMetadata: fixture=_generated
@@ -319,7 +321,8 @@ class CfnLink(
319
321
  def log_group_configuration(
320
322
  self,
321
323
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLink.LinkFilterProperty"]]:
322
- '''
324
+ '''Use this structure to filter which log groups are to share log events from this source account to the monitoring account.
325
+
323
326
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-oam-link-linkconfiguration.html#cfn-oam-link-linkconfiguration-loggroupconfiguration
324
327
  '''
325
328
  result = self._values.get("log_group_configuration")
@@ -329,7 +332,8 @@ class CfnLink(
329
332
  def metric_configuration(
330
333
  self,
331
334
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLink.LinkFilterProperty"]]:
332
- '''
335
+ '''Use this structure to filter which metric namespaces are to be shared from the source account to the monitoring account.
336
+
333
337
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-oam-link-linkconfiguration.html#cfn-oam-link-linkconfiguration-metricconfiguration
334
338
  '''
335
339
  result = self._values.get("metric_configuration")
@@ -353,8 +357,11 @@ class CfnLink(
353
357
  )
354
358
  class LinkFilterProperty:
355
359
  def __init__(self, *, filter: builtins.str) -> None:
356
- '''
357
- :param filter:
360
+ '''When used in ``MetricConfiguration`` this field specifies which metric namespaces are to be shared with the monitoring account.
361
+
362
+ When used in ``LogGroupConfiguration`` this field specifies which log groups are to share their log events with the monitoring account. Use the term ``LogGroupName`` and one or more of the following operands.
363
+
364
+ :param filter: When used in ``MetricConfiguration`` this field specifies which metric namespaces are to be shared with the monitoring account. When used in ``LogGroupConfiguration`` this field specifies which log groups are to share their log events with the monitoring account. Use the term ``LogGroupName`` and one or more of the following operands. Use single quotation marks (') around log group names and metric namespaces. The matching of log group names and metric namespaces is case sensitive. Each filter has a limit of five conditional operands. Conditional operands are ``AND`` and ``OR`` . - ``=`` and ``!=`` - ``AND`` - ``OR`` - ``LIKE`` and ``NOT LIKE`` . These can be used only as prefix searches. Include a ``%`` at the end of the string that you want to search for and include. - ``IN`` and ``NOT IN`` , using parentheses ``( )`` Examples: - ``Namespace NOT LIKE 'AWS/%'`` includes only namespaces that don't start with ``AWS/`` , such as custom namespaces. - ``Namespace IN ('AWS/EC2', 'AWS/ELB', 'AWS/S3')`` includes only the metrics in the EC2, Elastic Load Balancing , and Amazon S3 namespaces. - ``Namespace = 'AWS/EC2' OR Namespace NOT LIKE 'AWS/%'`` includes only the EC2 namespace and your custom namespaces. - ``LogGroupName IN ('This-Log-Group', 'Other-Log-Group')`` includes only the log groups with names ``This-Log-Group`` and ``Other-Log-Group`` . - ``LogGroupName NOT IN ('Private-Log-Group', 'Private-Log-Group-2')`` includes all log groups except the log groups with names ``Private-Log-Group`` and ``Private-Log-Group-2`` . - ``LogGroupName LIKE 'aws/lambda/%' OR LogGroupName LIKE 'AWSLogs%'`` includes all log groups that have names that start with ``aws/lambda/`` or ``AWSLogs`` . .. epigraph:: If you are updating a link that uses filters, you can specify ``*`` as the only value for the ``filter`` parameter to delete the filter and share all log groups with the monitoring account.
358
365
 
359
366
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-oam-link-linkfilter.html
360
367
  :exampleMetadata: fixture=_generated
@@ -378,7 +385,33 @@ class CfnLink(
378
385
 
379
386
  @builtins.property
380
387
  def filter(self) -> builtins.str:
381
- '''
388
+ '''When used in ``MetricConfiguration`` this field specifies which metric namespaces are to be shared with the monitoring account.
389
+
390
+ When used in ``LogGroupConfiguration`` this field specifies which log groups are to share their log events with the monitoring account. Use the term ``LogGroupName`` and one or more of the following operands.
391
+
392
+ Use single quotation marks (') around log group names and metric namespaces.
393
+
394
+ The matching of log group names and metric namespaces is case sensitive. Each filter has a limit of five conditional operands. Conditional operands are ``AND`` and ``OR`` .
395
+
396
+ - ``=`` and ``!=``
397
+ - ``AND``
398
+ - ``OR``
399
+ - ``LIKE`` and ``NOT LIKE`` . These can be used only as prefix searches. Include a ``%`` at the end of the string that you want to search for and include.
400
+ - ``IN`` and ``NOT IN`` , using parentheses ``( )``
401
+
402
+ Examples:
403
+
404
+ - ``Namespace NOT LIKE 'AWS/%'`` includes only namespaces that don't start with ``AWS/`` , such as custom namespaces.
405
+ - ``Namespace IN ('AWS/EC2', 'AWS/ELB', 'AWS/S3')`` includes only the metrics in the EC2, Elastic Load Balancing , and Amazon S3 namespaces.
406
+ - ``Namespace = 'AWS/EC2' OR Namespace NOT LIKE 'AWS/%'`` includes only the EC2 namespace and your custom namespaces.
407
+ - ``LogGroupName IN ('This-Log-Group', 'Other-Log-Group')`` includes only the log groups with names ``This-Log-Group`` and ``Other-Log-Group`` .
408
+ - ``LogGroupName NOT IN ('Private-Log-Group', 'Private-Log-Group-2')`` includes all log groups except the log groups with names ``Private-Log-Group`` and ``Private-Log-Group-2`` .
409
+ - ``LogGroupName LIKE 'aws/lambda/%' OR LogGroupName LIKE 'AWSLogs%'`` includes all log groups that have names that start with ``aws/lambda/`` or ``AWSLogs`` .
410
+
411
+ .. epigraph::
412
+
413
+ If you are updating a link that uses filters, you can specify ``*`` as the only value for the ``filter`` parameter to delete the filter and share all log groups with the monitoring account.
414
+
382
415
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-oam-link-linkfilter.html#cfn-oam-link-linkfilter-filter
383
416
  '''
384
417
  result = self._values.get("filter")
@@ -423,7 +456,7 @@ class CfnLinkProps:
423
456
  :param resource_types: An array of strings that define which types of data that the source account shares with the monitoring account. Valid values are ``AWS::CloudWatch::Metric | AWS::Logs::LogGroup | AWS::XRay::Trace | AWS::ApplicationInsights::Application | AWS::InternetMonitor::Monitor`` .
424
457
  :param sink_identifier: The ARN of the sink in the monitoring account that you want to link to. You can use `ListSinks <https://docs.aws.amazon.com/OAM/latest/APIReference/API_ListSinks.html>`_ to find the ARNs of sinks.
425
458
  :param label_template: Specify a friendly human-readable name to use to identify this source account when you are viewing data from it in the monitoring account. You can include the following variables in your template: - ``$AccountName`` is the name of the account - ``$AccountEmail`` is a globally-unique email address, which includes the email domain, such as ``mariagarcia@example.com`` - ``$AccountEmailNoDomain`` is an email address without the domain name, such as ``mariagarcia``
426
- :param link_configuration:
459
+ :param link_configuration: Use this structure to optionally create filters that specify that only some metric namespaces or log groups are to be shared from the source account to the monitoring account.
427
460
  :param tags: An array of key-value pairs to apply to the link. For more information, see `Tag <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html>`_ .
428
461
 
429
462
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-oam-link.html
@@ -515,7 +548,8 @@ class CfnLinkProps:
515
548
  def link_configuration(
516
549
  self,
517
550
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnLink.LinkConfigurationProperty]]:
518
- '''
551
+ '''Use this structure to optionally create filters that specify that only some metric namespaces or log groups are to be shared from the source account to the monitoring account.
552
+
519
553
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-oam-link.html#cfn-oam-link-linkconfiguration
520
554
  '''
521
555
  result = self._values.get("link_configuration")
@@ -2565,7 +2565,7 @@ class CfnWorkflow(
2565
2565
  :param main: The path of the main definition file for the workflow.
2566
2566
  :param name: The workflow's name.
2567
2567
  :param parameter_template: The workflow's parameter template.
2568
- :param storage_capacity: A storage capacity for the workflow in gibibytes.
2568
+ :param storage_capacity: The default storage capacity for the workflow runs, in gibibytes.
2569
2569
  :param tags: Tags for the workflow.
2570
2570
  '''
2571
2571
  if __debug__:
@@ -2770,7 +2770,7 @@ class CfnWorkflow(
2770
2770
  @builtins.property
2771
2771
  @jsii.member(jsii_name="storageCapacity")
2772
2772
  def storage_capacity(self) -> typing.Optional[jsii.Number]:
2773
- '''A storage capacity for the workflow in gibibytes.'''
2773
+ '''The default storage capacity for the workflow runs, in gibibytes.'''
2774
2774
  return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "storageCapacity"))
2775
2775
 
2776
2776
  @storage_capacity.setter
@@ -2907,7 +2907,7 @@ class CfnWorkflowProps:
2907
2907
  :param main: The path of the main definition file for the workflow.
2908
2908
  :param name: The workflow's name.
2909
2909
  :param parameter_template: The workflow's parameter template.
2910
- :param storage_capacity: A storage capacity for the workflow in gibibytes.
2910
+ :param storage_capacity: The default storage capacity for the workflow runs, in gibibytes.
2911
2911
  :param tags: Tags for the workflow.
2912
2912
 
2913
2913
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-workflow.html
@@ -3035,7 +3035,7 @@ class CfnWorkflowProps:
3035
3035
 
3036
3036
  @builtins.property
3037
3037
  def storage_capacity(self) -> typing.Optional[jsii.Number]:
3038
- '''A storage capacity for the workflow in gibibytes.
3038
+ '''The default storage capacity for the workflow runs, in gibibytes.
3039
3039
 
3040
3040
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-omics-workflow.html#cfn-omics-workflow-storagecapacity
3041
3041
  '''