aws-cdk-lib 2.143.1__py3-none-any.whl → 2.145.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.
- aws_cdk/__init__.py +1 -1
- aws_cdk/_jsii/__init__.py +1 -1
- aws_cdk/_jsii/{aws-cdk-lib@2.143.1.jsii.tgz → aws-cdk-lib@2.145.0.jsii.tgz} +0 -0
- aws_cdk/aws_apigatewayv2_authorizers/__init__.py +27 -0
- aws_cdk/aws_apigatewayv2_integrations/__init__.py +28 -0
- aws_cdk/aws_appconfig/__init__.py +132 -1
- aws_cdk/aws_autoscaling/__init__.py +4 -4
- aws_cdk/aws_bedrock/__init__.py +48 -0
- aws_cdk/aws_chatbot/__init__.py +149 -2
- aws_cdk/aws_cloudfront/experimental/__init__.py +65 -9
- aws_cdk/aws_codebuild/__init__.py +801 -16
- aws_cdk/aws_config/__init__.py +1305 -45
- aws_cdk/aws_dynamodb/__init__.py +309 -3
- aws_cdk/aws_ec2/__init__.py +112 -31
- aws_cdk/aws_ecs_patterns/__init__.py +89 -7
- aws_cdk/aws_eks/__init__.py +185 -41
- aws_cdk/aws_fsx/__init__.py +4 -4
- aws_cdk/aws_glue/__init__.py +39 -0
- aws_cdk/aws_iam/__init__.py +3 -3
- aws_cdk/aws_lambda/__init__.py +605 -42
- aws_cdk/aws_lambda_nodejs/__init__.py +160 -13
- aws_cdk/aws_logs/__init__.py +114 -8
- aws_cdk/aws_logs_destinations/__init__.py +11 -9
- aws_cdk/aws_mediaconnect/__init__.py +2 -6
- aws_cdk/aws_medialive/__init__.py +20 -2
- aws_cdk/aws_mediapackagev2/__init__.py +476 -0
- aws_cdk/aws_rds/__init__.py +27 -19
- aws_cdk/aws_route53/__init__.py +3 -3
- aws_cdk/aws_s3/__init__.py +21 -0
- aws_cdk/aws_s3_deployment/__init__.py +3 -2
- aws_cdk/aws_securityhub/__init__.py +2415 -374
- aws_cdk/aws_securitylake/__init__.py +179 -314
- aws_cdk/aws_sqs/__init__.py +2 -2
- aws_cdk/aws_stepfunctions/__init__.py +53 -24
- aws_cdk/aws_stepfunctions_tasks/__init__.py +763 -16
- aws_cdk/pipelines/__init__.py +2 -0
- aws_cdk/triggers/__init__.py +65 -9
- {aws_cdk_lib-2.143.1.dist-info → aws_cdk_lib-2.145.0.dist-info}/METADATA +1 -1
- {aws_cdk_lib-2.143.1.dist-info → aws_cdk_lib-2.145.0.dist-info}/RECORD +43 -43
- {aws_cdk_lib-2.143.1.dist-info → aws_cdk_lib-2.145.0.dist-info}/WHEEL +1 -1
- {aws_cdk_lib-2.143.1.dist-info → aws_cdk_lib-2.145.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.143.1.dist-info → aws_cdk_lib-2.145.0.dist-info}/NOTICE +0 -0
- {aws_cdk_lib-2.143.1.dist-info → aws_cdk_lib-2.145.0.dist-info}/top_level.txt +0 -0
aws_cdk/aws_dynamodb/__init__.py
CHANGED
|
@@ -623,6 +623,36 @@ If you intend to use the `tableStreamArn` (including indirectly, for example by
|
|
|
623
623
|
|
|
624
624
|
To grant permissions to indexes for a referenced table you can either set `grantIndexPermissions` to `true`, or you can provide the indexes via the `globalIndexes` or `localIndexes` properties. This will enable `grant*` methods to also grant permissions to *all* table indexes.
|
|
625
625
|
|
|
626
|
+
## Resource Policy
|
|
627
|
+
|
|
628
|
+
Using `resourcePolicy` you can add a [resource policy](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/access-control-resource-based.html) to a table in the form of a `PolicyDocument`:
|
|
629
|
+
|
|
630
|
+
```
|
|
631
|
+
// resource policy document
|
|
632
|
+
const policy = new iam.PolicyDocument({
|
|
633
|
+
statements: [
|
|
634
|
+
new iam.PolicyStatement({
|
|
635
|
+
actions: ['dynamodb:GetItem'],
|
|
636
|
+
principals: [new iam.AccountRootPrincipal()],
|
|
637
|
+
resources: ['*'],
|
|
638
|
+
}),
|
|
639
|
+
],
|
|
640
|
+
});
|
|
641
|
+
|
|
642
|
+
// table with resource policy
|
|
643
|
+
new dynamodb.TableV2(this, 'TableTestV2-1', {
|
|
644
|
+
partitionKey: {
|
|
645
|
+
name: 'id',
|
|
646
|
+
type: dynamodb.AttributeType.STRING,
|
|
647
|
+
},
|
|
648
|
+
removalPolicy: RemovalPolicy.DESTROY,
|
|
649
|
+
resourcePolicy: policy,
|
|
650
|
+
});
|
|
651
|
+
```
|
|
652
|
+
|
|
653
|
+
TableV2 doesn’t support creating a replica and adding a resource-based policy to that replica in the same stack update in Regions other than the Region where you deploy the stack update.
|
|
654
|
+
To incorporate a resource-based policy into a replica, you'll need to initially deploy the replica without the policy, followed by a subsequent update to include the desired policy.
|
|
655
|
+
|
|
626
656
|
## Grants
|
|
627
657
|
|
|
628
658
|
Using any of the `grant*` methods on an instance of the `TableV2` construct will only apply to the primary table, its indexes, and any associated `encryptionKey`. As an example, `grantReadData` used below will only apply the table in `us-west-2`:
|
|
@@ -905,7 +935,14 @@ from ..aws_cloudwatch import (
|
|
|
905
935
|
MetricOptions as _MetricOptions_1788b62f,
|
|
906
936
|
Unit as _Unit_61bc6f70,
|
|
907
937
|
)
|
|
908
|
-
from ..aws_iam import
|
|
938
|
+
from ..aws_iam import (
|
|
939
|
+
AddToResourcePolicyResult as _AddToResourcePolicyResult_1d0a53ad,
|
|
940
|
+
Grant as _Grant_a7ae64f8,
|
|
941
|
+
IGrantable as _IGrantable_71c4f5de,
|
|
942
|
+
IResourceWithPolicy as _IResourceWithPolicy_720d64fc,
|
|
943
|
+
PolicyDocument as _PolicyDocument_3ac34393,
|
|
944
|
+
PolicyStatement as _PolicyStatement_0fe33853,
|
|
945
|
+
)
|
|
909
946
|
from ..aws_kinesis import IStream as _IStream_4e2457d2
|
|
910
947
|
from ..aws_kms import IKey as _IKey_5f11635f
|
|
911
948
|
from ..aws_s3 import IBucket as _IBucket_42e086fd
|
|
@@ -9634,7 +9671,7 @@ class TableAttributesV2:
|
|
|
9634
9671
|
)
|
|
9635
9672
|
|
|
9636
9673
|
|
|
9637
|
-
@jsii.implements(ITable)
|
|
9674
|
+
@jsii.implements(ITable, _IResourceWithPolicy_720d64fc)
|
|
9638
9675
|
class TableBase(
|
|
9639
9676
|
_Resource_45bc6135,
|
|
9640
9677
|
metaclass=jsii.JSIIAbstractClass,
|
|
@@ -9671,6 +9708,24 @@ class TableBase(
|
|
|
9671
9708
|
|
|
9672
9709
|
jsii.create(self.__class__, self, [scope, id, props])
|
|
9673
9710
|
|
|
9711
|
+
@jsii.member(jsii_name="addToResourcePolicy")
|
|
9712
|
+
def add_to_resource_policy(
|
|
9713
|
+
self,
|
|
9714
|
+
statement: _PolicyStatement_0fe33853,
|
|
9715
|
+
) -> _AddToResourcePolicyResult_1d0a53ad:
|
|
9716
|
+
'''Adds a statement to the resource policy associated with this file system.
|
|
9717
|
+
|
|
9718
|
+
A resource policy will be automatically created upon the first call to ``addToResourcePolicy``.
|
|
9719
|
+
|
|
9720
|
+
Note that this does not work with imported file systems.
|
|
9721
|
+
|
|
9722
|
+
:param statement: The policy statement to add.
|
|
9723
|
+
'''
|
|
9724
|
+
if __debug__:
|
|
9725
|
+
type_hints = typing.get_type_hints(_typecheckingstub__9998fbfc8fdb03f3fe5356d84b9b9390d26bd73efb0eab172a4c638aeae5fc01)
|
|
9726
|
+
check_type(argname="argument statement", value=statement, expected_type=type_hints["statement"])
|
|
9727
|
+
return typing.cast(_AddToResourcePolicyResult_1d0a53ad, jsii.invoke(self, "addToResourcePolicy", [statement]))
|
|
9728
|
+
|
|
9674
9729
|
@jsii.member(jsii_name="grant")
|
|
9675
9730
|
def grant(
|
|
9676
9731
|
self,
|
|
@@ -10310,6 +10365,21 @@ class TableBase(
|
|
|
10310
10365
|
'''
|
|
10311
10366
|
...
|
|
10312
10367
|
|
|
10368
|
+
@builtins.property
|
|
10369
|
+
@jsii.member(jsii_name="resourcePolicy")
|
|
10370
|
+
@abc.abstractmethod
|
|
10371
|
+
def resource_policy(self) -> typing.Optional[_PolicyDocument_3ac34393]:
|
|
10372
|
+
'''Resource policy to assign to table.
|
|
10373
|
+
|
|
10374
|
+
:attribute: true
|
|
10375
|
+
'''
|
|
10376
|
+
...
|
|
10377
|
+
|
|
10378
|
+
@resource_policy.setter
|
|
10379
|
+
@abc.abstractmethod
|
|
10380
|
+
def resource_policy(self, value: typing.Optional[_PolicyDocument_3ac34393]) -> None:
|
|
10381
|
+
...
|
|
10382
|
+
|
|
10313
10383
|
|
|
10314
10384
|
class _TableBaseProxy(
|
|
10315
10385
|
TableBase,
|
|
@@ -10353,11 +10423,27 @@ class _TableBaseProxy(
|
|
|
10353
10423
|
'''
|
|
10354
10424
|
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "tableStreamArn"))
|
|
10355
10425
|
|
|
10426
|
+
@builtins.property
|
|
10427
|
+
@jsii.member(jsii_name="resourcePolicy")
|
|
10428
|
+
def resource_policy(self) -> typing.Optional[_PolicyDocument_3ac34393]:
|
|
10429
|
+
'''Resource policy to assign to table.
|
|
10430
|
+
|
|
10431
|
+
:attribute: true
|
|
10432
|
+
'''
|
|
10433
|
+
return typing.cast(typing.Optional[_PolicyDocument_3ac34393], jsii.get(self, "resourcePolicy"))
|
|
10434
|
+
|
|
10435
|
+
@resource_policy.setter
|
|
10436
|
+
def resource_policy(self, value: typing.Optional[_PolicyDocument_3ac34393]) -> None:
|
|
10437
|
+
if __debug__:
|
|
10438
|
+
type_hints = typing.get_type_hints(_typecheckingstub__385df27fafa61fd6d1e8ebb872e4af26b3119795ee6bb9684e56f891cd86ba94)
|
|
10439
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
10440
|
+
jsii.set(self, "resourcePolicy", value)
|
|
10441
|
+
|
|
10356
10442
|
# Adding a "__jsii_proxy_class__(): typing.Type" function to the abstract class
|
|
10357
10443
|
typing.cast(typing.Any, TableBase).__jsii_proxy_class__ = lambda : _TableBaseProxy
|
|
10358
10444
|
|
|
10359
10445
|
|
|
10360
|
-
@jsii.implements(ITableV2)
|
|
10446
|
+
@jsii.implements(ITableV2, _IResourceWithPolicy_720d64fc)
|
|
10361
10447
|
class TableBaseV2(
|
|
10362
10448
|
_Resource_45bc6135,
|
|
10363
10449
|
metaclass=jsii.JSIIAbstractClass,
|
|
@@ -10396,6 +10482,24 @@ class TableBaseV2(
|
|
|
10396
10482
|
|
|
10397
10483
|
jsii.create(self.__class__, self, [scope, id, props])
|
|
10398
10484
|
|
|
10485
|
+
@jsii.member(jsii_name="addToResourcePolicy")
|
|
10486
|
+
def add_to_resource_policy(
|
|
10487
|
+
self,
|
|
10488
|
+
statement: _PolicyStatement_0fe33853,
|
|
10489
|
+
) -> _AddToResourcePolicyResult_1d0a53ad:
|
|
10490
|
+
'''Adds a statement to the resource policy associated with this file system.
|
|
10491
|
+
|
|
10492
|
+
A resource policy will be automatically created upon the first call to ``addToResourcePolicy``.
|
|
10493
|
+
|
|
10494
|
+
Note that this does not work with imported file systems.
|
|
10495
|
+
|
|
10496
|
+
:param statement: The policy statement to add.
|
|
10497
|
+
'''
|
|
10498
|
+
if __debug__:
|
|
10499
|
+
type_hints = typing.get_type_hints(_typecheckingstub__8ddb2818dbfcaf1b52fed7edb8ce145b274541d665df431c417e676bd4f69dec)
|
|
10500
|
+
check_type(argname="argument statement", value=statement, expected_type=type_hints["statement"])
|
|
10501
|
+
return typing.cast(_AddToResourcePolicyResult_1d0a53ad, jsii.invoke(self, "addToResourcePolicy", [statement]))
|
|
10502
|
+
|
|
10399
10503
|
@jsii.member(jsii_name="grant")
|
|
10400
10504
|
def grant(
|
|
10401
10505
|
self,
|
|
@@ -11055,6 +11159,18 @@ class TableBaseV2(
|
|
|
11055
11159
|
'''
|
|
11056
11160
|
...
|
|
11057
11161
|
|
|
11162
|
+
@builtins.property
|
|
11163
|
+
@jsii.member(jsii_name="resourcePolicy")
|
|
11164
|
+
@abc.abstractmethod
|
|
11165
|
+
def resource_policy(self) -> typing.Optional[_PolicyDocument_3ac34393]:
|
|
11166
|
+
'''The resource policy for the table.'''
|
|
11167
|
+
...
|
|
11168
|
+
|
|
11169
|
+
@resource_policy.setter
|
|
11170
|
+
@abc.abstractmethod
|
|
11171
|
+
def resource_policy(self, value: typing.Optional[_PolicyDocument_3ac34393]) -> None:
|
|
11172
|
+
...
|
|
11173
|
+
|
|
11058
11174
|
|
|
11059
11175
|
class _TableBaseV2Proxy(
|
|
11060
11176
|
TableBaseV2,
|
|
@@ -11112,6 +11228,19 @@ class _TableBaseV2Proxy(
|
|
|
11112
11228
|
'''
|
|
11113
11229
|
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "tableStreamArn"))
|
|
11114
11230
|
|
|
11231
|
+
@builtins.property
|
|
11232
|
+
@jsii.member(jsii_name="resourcePolicy")
|
|
11233
|
+
def resource_policy(self) -> typing.Optional[_PolicyDocument_3ac34393]:
|
|
11234
|
+
'''The resource policy for the table.'''
|
|
11235
|
+
return typing.cast(typing.Optional[_PolicyDocument_3ac34393], jsii.get(self, "resourcePolicy"))
|
|
11236
|
+
|
|
11237
|
+
@resource_policy.setter
|
|
11238
|
+
def resource_policy(self, value: typing.Optional[_PolicyDocument_3ac34393]) -> None:
|
|
11239
|
+
if __debug__:
|
|
11240
|
+
type_hints = typing.get_type_hints(_typecheckingstub__cb944fe3dd5a924cda3570a3226b526ff95d46099b3de4b4ab2a005c34091870)
|
|
11241
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
11242
|
+
jsii.set(self, "resourcePolicy", value)
|
|
11243
|
+
|
|
11115
11244
|
# Adding a "__jsii_proxy_class__(): typing.Type" function to the abstract class
|
|
11116
11245
|
typing.cast(typing.Any, TableBaseV2).__jsii_proxy_class__ = lambda : _TableBaseV2Proxy
|
|
11117
11246
|
|
|
@@ -11264,6 +11393,7 @@ typing.cast(typing.Any, TableEncryptionV2).__jsii_proxy_class__ = lambda : _Tabl
|
|
|
11264
11393
|
"removal_policy": "removalPolicy",
|
|
11265
11394
|
"replication_regions": "replicationRegions",
|
|
11266
11395
|
"replication_timeout": "replicationTimeout",
|
|
11396
|
+
"resource_policy": "resourcePolicy",
|
|
11267
11397
|
"stream": "stream",
|
|
11268
11398
|
"table_class": "tableClass",
|
|
11269
11399
|
"time_to_live_attribute": "timeToLiveAttribute",
|
|
@@ -11288,6 +11418,7 @@ class TableOptions(SchemaOptions):
|
|
|
11288
11418
|
removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
|
|
11289
11419
|
replication_regions: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
11290
11420
|
replication_timeout: typing.Optional[_Duration_4839e8c3] = None,
|
|
11421
|
+
resource_policy: typing.Optional[_PolicyDocument_3ac34393] = None,
|
|
11291
11422
|
stream: typing.Optional[StreamViewType] = None,
|
|
11292
11423
|
table_class: typing.Optional[TableClass] = None,
|
|
11293
11424
|
time_to_live_attribute: typing.Optional[builtins.str] = None,
|
|
@@ -11311,6 +11442,7 @@ class TableOptions(SchemaOptions):
|
|
|
11311
11442
|
:param removal_policy: The removal policy to apply to the DynamoDB Table. Default: RemovalPolicy.RETAIN
|
|
11312
11443
|
:param replication_regions: Regions where replica tables will be created. Default: - no replica tables are created
|
|
11313
11444
|
:param replication_timeout: The timeout for a table replication operation in a single region. Default: Duration.minutes(30)
|
|
11445
|
+
:param resource_policy: Resource policy to assign to table. Default: - No resource policy statement
|
|
11314
11446
|
:param stream: When an item in the table is modified, StreamViewType determines what information is written to the stream for this table. Default: - streams are disabled unless ``replicationRegions`` is specified
|
|
11315
11447
|
:param table_class: Specify the table class. Default: STANDARD
|
|
11316
11448
|
:param time_to_live_attribute: The name of TTL attribute. Default: - TTL is disabled
|
|
@@ -11325,12 +11457,14 @@ class TableOptions(SchemaOptions):
|
|
|
11325
11457
|
# The values are placeholders you should change.
|
|
11326
11458
|
import aws_cdk as cdk
|
|
11327
11459
|
from aws_cdk import aws_dynamodb as dynamodb
|
|
11460
|
+
from aws_cdk import aws_iam as iam
|
|
11328
11461
|
from aws_cdk import aws_kms as kms
|
|
11329
11462
|
from aws_cdk import aws_s3 as s3
|
|
11330
11463
|
|
|
11331
11464
|
# bucket: s3.Bucket
|
|
11332
11465
|
# input_format: dynamodb.InputFormat
|
|
11333
11466
|
# key: kms.Key
|
|
11467
|
+
# policy_document: iam.PolicyDocument
|
|
11334
11468
|
|
|
11335
11469
|
table_options = dynamodb.TableOptions(
|
|
11336
11470
|
partition_key=dynamodb.Attribute(
|
|
@@ -11358,6 +11492,7 @@ class TableOptions(SchemaOptions):
|
|
|
11358
11492
|
removal_policy=cdk.RemovalPolicy.DESTROY,
|
|
11359
11493
|
replication_regions=["replicationRegions"],
|
|
11360
11494
|
replication_timeout=cdk.Duration.minutes(30),
|
|
11495
|
+
resource_policy=policy_document,
|
|
11361
11496
|
sort_key=dynamodb.Attribute(
|
|
11362
11497
|
name="name",
|
|
11363
11498
|
type=dynamodb.AttributeType.BINARY
|
|
@@ -11390,6 +11525,7 @@ class TableOptions(SchemaOptions):
|
|
|
11390
11525
|
check_type(argname="argument removal_policy", value=removal_policy, expected_type=type_hints["removal_policy"])
|
|
11391
11526
|
check_type(argname="argument replication_regions", value=replication_regions, expected_type=type_hints["replication_regions"])
|
|
11392
11527
|
check_type(argname="argument replication_timeout", value=replication_timeout, expected_type=type_hints["replication_timeout"])
|
|
11528
|
+
check_type(argname="argument resource_policy", value=resource_policy, expected_type=type_hints["resource_policy"])
|
|
11393
11529
|
check_type(argname="argument stream", value=stream, expected_type=type_hints["stream"])
|
|
11394
11530
|
check_type(argname="argument table_class", value=table_class, expected_type=type_hints["table_class"])
|
|
11395
11531
|
check_type(argname="argument time_to_live_attribute", value=time_to_live_attribute, expected_type=type_hints["time_to_live_attribute"])
|
|
@@ -11422,6 +11558,8 @@ class TableOptions(SchemaOptions):
|
|
|
11422
11558
|
self._values["replication_regions"] = replication_regions
|
|
11423
11559
|
if replication_timeout is not None:
|
|
11424
11560
|
self._values["replication_timeout"] = replication_timeout
|
|
11561
|
+
if resource_policy is not None:
|
|
11562
|
+
self._values["resource_policy"] = resource_policy
|
|
11425
11563
|
if stream is not None:
|
|
11426
11564
|
self._values["stream"] = stream
|
|
11427
11565
|
if table_class is not None:
|
|
@@ -11570,6 +11708,17 @@ class TableOptions(SchemaOptions):
|
|
|
11570
11708
|
result = self._values.get("replication_timeout")
|
|
11571
11709
|
return typing.cast(typing.Optional[_Duration_4839e8c3], result)
|
|
11572
11710
|
|
|
11711
|
+
@builtins.property
|
|
11712
|
+
def resource_policy(self) -> typing.Optional[_PolicyDocument_3ac34393]:
|
|
11713
|
+
'''Resource policy to assign to table.
|
|
11714
|
+
|
|
11715
|
+
:default: - No resource policy statement
|
|
11716
|
+
|
|
11717
|
+
:see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-resourcepolicy
|
|
11718
|
+
'''
|
|
11719
|
+
result = self._values.get("resource_policy")
|
|
11720
|
+
return typing.cast(typing.Optional[_PolicyDocument_3ac34393], result)
|
|
11721
|
+
|
|
11573
11722
|
@builtins.property
|
|
11574
11723
|
def stream(self) -> typing.Optional[StreamViewType]:
|
|
11575
11724
|
'''When an item in the table is modified, StreamViewType determines what information is written to the stream for this table.
|
|
@@ -11658,6 +11807,7 @@ class TableOptions(SchemaOptions):
|
|
|
11658
11807
|
"deletion_protection": "deletionProtection",
|
|
11659
11808
|
"kinesis_stream": "kinesisStream",
|
|
11660
11809
|
"point_in_time_recovery": "pointInTimeRecovery",
|
|
11810
|
+
"resource_policy": "resourcePolicy",
|
|
11661
11811
|
"table_class": "tableClass",
|
|
11662
11812
|
"tags": "tags",
|
|
11663
11813
|
},
|
|
@@ -11670,6 +11820,7 @@ class TableOptionsV2:
|
|
|
11670
11820
|
deletion_protection: typing.Optional[builtins.bool] = None,
|
|
11671
11821
|
kinesis_stream: typing.Optional[_IStream_4e2457d2] = None,
|
|
11672
11822
|
point_in_time_recovery: typing.Optional[builtins.bool] = None,
|
|
11823
|
+
resource_policy: typing.Optional[_PolicyDocument_3ac34393] = None,
|
|
11673
11824
|
table_class: typing.Optional[TableClass] = None,
|
|
11674
11825
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
11675
11826
|
) -> None:
|
|
@@ -11679,6 +11830,7 @@ class TableOptionsV2:
|
|
|
11679
11830
|
:param deletion_protection: Whether deletion protection is enabled. Default: false
|
|
11680
11831
|
:param kinesis_stream: Kinesis Data Stream to capture item level changes. Default: - no Kinesis Data Stream
|
|
11681
11832
|
:param point_in_time_recovery: Whether point-in-time recovery is enabled. Default: false
|
|
11833
|
+
:param resource_policy: Resource policy to assign to DynamoDB Table. Default: - No resource policy statements are added to the created table.
|
|
11682
11834
|
:param table_class: The table class. Default: TableClass.STANDARD
|
|
11683
11835
|
:param tags: Tags to be applied to the table or replica table. Default: - no tags
|
|
11684
11836
|
|
|
@@ -11689,8 +11841,10 @@ class TableOptionsV2:
|
|
|
11689
11841
|
# The code below shows an example of how to instantiate this type.
|
|
11690
11842
|
# The values are placeholders you should change.
|
|
11691
11843
|
from aws_cdk import aws_dynamodb as dynamodb
|
|
11844
|
+
from aws_cdk import aws_iam as iam
|
|
11692
11845
|
from aws_cdk import aws_kinesis as kinesis
|
|
11693
11846
|
|
|
11847
|
+
# policy_document: iam.PolicyDocument
|
|
11694
11848
|
# stream: kinesis.Stream
|
|
11695
11849
|
|
|
11696
11850
|
table_options_v2 = dynamodb.TableOptionsV2(
|
|
@@ -11698,6 +11852,7 @@ class TableOptionsV2:
|
|
|
11698
11852
|
deletion_protection=False,
|
|
11699
11853
|
kinesis_stream=stream,
|
|
11700
11854
|
point_in_time_recovery=False,
|
|
11855
|
+
resource_policy=policy_document,
|
|
11701
11856
|
table_class=dynamodb.TableClass.STANDARD,
|
|
11702
11857
|
tags=[CfnTag(
|
|
11703
11858
|
key="key",
|
|
@@ -11711,6 +11866,7 @@ class TableOptionsV2:
|
|
|
11711
11866
|
check_type(argname="argument deletion_protection", value=deletion_protection, expected_type=type_hints["deletion_protection"])
|
|
11712
11867
|
check_type(argname="argument kinesis_stream", value=kinesis_stream, expected_type=type_hints["kinesis_stream"])
|
|
11713
11868
|
check_type(argname="argument point_in_time_recovery", value=point_in_time_recovery, expected_type=type_hints["point_in_time_recovery"])
|
|
11869
|
+
check_type(argname="argument resource_policy", value=resource_policy, expected_type=type_hints["resource_policy"])
|
|
11714
11870
|
check_type(argname="argument table_class", value=table_class, expected_type=type_hints["table_class"])
|
|
11715
11871
|
check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
|
|
11716
11872
|
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
@@ -11722,6 +11878,8 @@ class TableOptionsV2:
|
|
|
11722
11878
|
self._values["kinesis_stream"] = kinesis_stream
|
|
11723
11879
|
if point_in_time_recovery is not None:
|
|
11724
11880
|
self._values["point_in_time_recovery"] = point_in_time_recovery
|
|
11881
|
+
if resource_policy is not None:
|
|
11882
|
+
self._values["resource_policy"] = resource_policy
|
|
11725
11883
|
if table_class is not None:
|
|
11726
11884
|
self._values["table_class"] = table_class
|
|
11727
11885
|
if tags is not None:
|
|
@@ -11763,6 +11921,17 @@ class TableOptionsV2:
|
|
|
11763
11921
|
result = self._values.get("point_in_time_recovery")
|
|
11764
11922
|
return typing.cast(typing.Optional[builtins.bool], result)
|
|
11765
11923
|
|
|
11924
|
+
@builtins.property
|
|
11925
|
+
def resource_policy(self) -> typing.Optional[_PolicyDocument_3ac34393]:
|
|
11926
|
+
'''Resource policy to assign to DynamoDB Table.
|
|
11927
|
+
|
|
11928
|
+
:default: - No resource policy statements are added to the created table.
|
|
11929
|
+
|
|
11930
|
+
:see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-replicaspecification.html#cfn-dynamodb-globaltable-replicaspecification-resourcepolicy
|
|
11931
|
+
'''
|
|
11932
|
+
result = self._values.get("resource_policy")
|
|
11933
|
+
return typing.cast(typing.Optional[_PolicyDocument_3ac34393], result)
|
|
11934
|
+
|
|
11766
11935
|
@builtins.property
|
|
11767
11936
|
def table_class(self) -> typing.Optional[TableClass]:
|
|
11768
11937
|
'''The table class.
|
|
@@ -11810,6 +11979,7 @@ class TableOptionsV2:
|
|
|
11810
11979
|
"removal_policy": "removalPolicy",
|
|
11811
11980
|
"replication_regions": "replicationRegions",
|
|
11812
11981
|
"replication_timeout": "replicationTimeout",
|
|
11982
|
+
"resource_policy": "resourcePolicy",
|
|
11813
11983
|
"stream": "stream",
|
|
11814
11984
|
"table_class": "tableClass",
|
|
11815
11985
|
"time_to_live_attribute": "timeToLiveAttribute",
|
|
@@ -11836,6 +12006,7 @@ class TableProps(TableOptions):
|
|
|
11836
12006
|
removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
|
|
11837
12007
|
replication_regions: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
11838
12008
|
replication_timeout: typing.Optional[_Duration_4839e8c3] = None,
|
|
12009
|
+
resource_policy: typing.Optional[_PolicyDocument_3ac34393] = None,
|
|
11839
12010
|
stream: typing.Optional[StreamViewType] = None,
|
|
11840
12011
|
table_class: typing.Optional[TableClass] = None,
|
|
11841
12012
|
time_to_live_attribute: typing.Optional[builtins.str] = None,
|
|
@@ -11859,6 +12030,7 @@ class TableProps(TableOptions):
|
|
|
11859
12030
|
:param removal_policy: The removal policy to apply to the DynamoDB Table. Default: RemovalPolicy.RETAIN
|
|
11860
12031
|
:param replication_regions: Regions where replica tables will be created. Default: - no replica tables are created
|
|
11861
12032
|
:param replication_timeout: The timeout for a table replication operation in a single region. Default: Duration.minutes(30)
|
|
12033
|
+
:param resource_policy: Resource policy to assign to table. Default: - No resource policy statement
|
|
11862
12034
|
:param stream: When an item in the table is modified, StreamViewType determines what information is written to the stream for this table. Default: - streams are disabled unless ``replicationRegions`` is specified
|
|
11863
12035
|
:param table_class: Specify the table class. Default: STANDARD
|
|
11864
12036
|
:param time_to_live_attribute: The name of TTL attribute. Default: - TTL is disabled
|
|
@@ -11917,6 +12089,7 @@ class TableProps(TableOptions):
|
|
|
11917
12089
|
check_type(argname="argument removal_policy", value=removal_policy, expected_type=type_hints["removal_policy"])
|
|
11918
12090
|
check_type(argname="argument replication_regions", value=replication_regions, expected_type=type_hints["replication_regions"])
|
|
11919
12091
|
check_type(argname="argument replication_timeout", value=replication_timeout, expected_type=type_hints["replication_timeout"])
|
|
12092
|
+
check_type(argname="argument resource_policy", value=resource_policy, expected_type=type_hints["resource_policy"])
|
|
11920
12093
|
check_type(argname="argument stream", value=stream, expected_type=type_hints["stream"])
|
|
11921
12094
|
check_type(argname="argument table_class", value=table_class, expected_type=type_hints["table_class"])
|
|
11922
12095
|
check_type(argname="argument time_to_live_attribute", value=time_to_live_attribute, expected_type=type_hints["time_to_live_attribute"])
|
|
@@ -11951,6 +12124,8 @@ class TableProps(TableOptions):
|
|
|
11951
12124
|
self._values["replication_regions"] = replication_regions
|
|
11952
12125
|
if replication_timeout is not None:
|
|
11953
12126
|
self._values["replication_timeout"] = replication_timeout
|
|
12127
|
+
if resource_policy is not None:
|
|
12128
|
+
self._values["resource_policy"] = resource_policy
|
|
11954
12129
|
if stream is not None:
|
|
11955
12130
|
self._values["stream"] = stream
|
|
11956
12131
|
if table_class is not None:
|
|
@@ -12103,6 +12278,17 @@ class TableProps(TableOptions):
|
|
|
12103
12278
|
result = self._values.get("replication_timeout")
|
|
12104
12279
|
return typing.cast(typing.Optional[_Duration_4839e8c3], result)
|
|
12105
12280
|
|
|
12281
|
+
@builtins.property
|
|
12282
|
+
def resource_policy(self) -> typing.Optional[_PolicyDocument_3ac34393]:
|
|
12283
|
+
'''Resource policy to assign to table.
|
|
12284
|
+
|
|
12285
|
+
:default: - No resource policy statement
|
|
12286
|
+
|
|
12287
|
+
:see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-resourcepolicy
|
|
12288
|
+
'''
|
|
12289
|
+
result = self._values.get("resource_policy")
|
|
12290
|
+
return typing.cast(typing.Optional[_PolicyDocument_3ac34393], result)
|
|
12291
|
+
|
|
12106
12292
|
@builtins.property
|
|
12107
12293
|
def stream(self) -> typing.Optional[StreamViewType]:
|
|
12108
12294
|
'''When an item in the table is modified, StreamViewType determines what information is written to the stream for this table.
|
|
@@ -12209,6 +12395,7 @@ class TableProps(TableOptions):
|
|
|
12209
12395
|
"deletion_protection": "deletionProtection",
|
|
12210
12396
|
"kinesis_stream": "kinesisStream",
|
|
12211
12397
|
"point_in_time_recovery": "pointInTimeRecovery",
|
|
12398
|
+
"resource_policy": "resourcePolicy",
|
|
12212
12399
|
"table_class": "tableClass",
|
|
12213
12400
|
"tags": "tags",
|
|
12214
12401
|
"partition_key": "partitionKey",
|
|
@@ -12232,6 +12419,7 @@ class TablePropsV2(TableOptionsV2):
|
|
|
12232
12419
|
deletion_protection: typing.Optional[builtins.bool] = None,
|
|
12233
12420
|
kinesis_stream: typing.Optional[_IStream_4e2457d2] = None,
|
|
12234
12421
|
point_in_time_recovery: typing.Optional[builtins.bool] = None,
|
|
12422
|
+
resource_policy: typing.Optional[_PolicyDocument_3ac34393] = None,
|
|
12235
12423
|
table_class: typing.Optional[TableClass] = None,
|
|
12236
12424
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
12237
12425
|
partition_key: typing.Union[Attribute, typing.Dict[builtins.str, typing.Any]],
|
|
@@ -12252,6 +12440,7 @@ class TablePropsV2(TableOptionsV2):
|
|
|
12252
12440
|
:param deletion_protection: Whether deletion protection is enabled. Default: false
|
|
12253
12441
|
:param kinesis_stream: Kinesis Data Stream to capture item level changes. Default: - no Kinesis Data Stream
|
|
12254
12442
|
:param point_in_time_recovery: Whether point-in-time recovery is enabled. Default: false
|
|
12443
|
+
:param resource_policy: Resource policy to assign to DynamoDB Table. Default: - No resource policy statements are added to the created table.
|
|
12255
12444
|
:param table_class: The table class. Default: TableClass.STANDARD
|
|
12256
12445
|
:param tags: Tags to be applied to the table or replica table. Default: - no tags
|
|
12257
12446
|
:param partition_key: Partition key attribute definition.
|
|
@@ -12294,6 +12483,7 @@ class TablePropsV2(TableOptionsV2):
|
|
|
12294
12483
|
check_type(argname="argument deletion_protection", value=deletion_protection, expected_type=type_hints["deletion_protection"])
|
|
12295
12484
|
check_type(argname="argument kinesis_stream", value=kinesis_stream, expected_type=type_hints["kinesis_stream"])
|
|
12296
12485
|
check_type(argname="argument point_in_time_recovery", value=point_in_time_recovery, expected_type=type_hints["point_in_time_recovery"])
|
|
12486
|
+
check_type(argname="argument resource_policy", value=resource_policy, expected_type=type_hints["resource_policy"])
|
|
12297
12487
|
check_type(argname="argument table_class", value=table_class, expected_type=type_hints["table_class"])
|
|
12298
12488
|
check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
|
|
12299
12489
|
check_type(argname="argument partition_key", value=partition_key, expected_type=type_hints["partition_key"])
|
|
@@ -12318,6 +12508,8 @@ class TablePropsV2(TableOptionsV2):
|
|
|
12318
12508
|
self._values["kinesis_stream"] = kinesis_stream
|
|
12319
12509
|
if point_in_time_recovery is not None:
|
|
12320
12510
|
self._values["point_in_time_recovery"] = point_in_time_recovery
|
|
12511
|
+
if resource_policy is not None:
|
|
12512
|
+
self._values["resource_policy"] = resource_policy
|
|
12321
12513
|
if table_class is not None:
|
|
12322
12514
|
self._values["table_class"] = table_class
|
|
12323
12515
|
if tags is not None:
|
|
@@ -12379,6 +12571,17 @@ class TablePropsV2(TableOptionsV2):
|
|
|
12379
12571
|
result = self._values.get("point_in_time_recovery")
|
|
12380
12572
|
return typing.cast(typing.Optional[builtins.bool], result)
|
|
12381
12573
|
|
|
12574
|
+
@builtins.property
|
|
12575
|
+
def resource_policy(self) -> typing.Optional[_PolicyDocument_3ac34393]:
|
|
12576
|
+
'''Resource policy to assign to DynamoDB Table.
|
|
12577
|
+
|
|
12578
|
+
:default: - No resource policy statements are added to the created table.
|
|
12579
|
+
|
|
12580
|
+
:see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-replicaspecification.html#cfn-dynamodb-globaltable-replicaspecification-resourcepolicy
|
|
12581
|
+
'''
|
|
12582
|
+
result = self._values.get("resource_policy")
|
|
12583
|
+
return typing.cast(typing.Optional[_PolicyDocument_3ac34393], result)
|
|
12584
|
+
|
|
12382
12585
|
@builtins.property
|
|
12383
12586
|
def table_class(self) -> typing.Optional[TableClass]:
|
|
12384
12587
|
'''The table class.
|
|
@@ -12568,6 +12771,7 @@ class TableV2(
|
|
|
12568
12771
|
deletion_protection: typing.Optional[builtins.bool] = None,
|
|
12569
12772
|
kinesis_stream: typing.Optional[_IStream_4e2457d2] = None,
|
|
12570
12773
|
point_in_time_recovery: typing.Optional[builtins.bool] = None,
|
|
12774
|
+
resource_policy: typing.Optional[_PolicyDocument_3ac34393] = None,
|
|
12571
12775
|
table_class: typing.Optional[TableClass] = None,
|
|
12572
12776
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
12573
12777
|
) -> None:
|
|
@@ -12589,6 +12793,7 @@ class TableV2(
|
|
|
12589
12793
|
:param deletion_protection: Whether deletion protection is enabled. Default: false
|
|
12590
12794
|
:param kinesis_stream: Kinesis Data Stream to capture item level changes. Default: - no Kinesis Data Stream
|
|
12591
12795
|
:param point_in_time_recovery: Whether point-in-time recovery is enabled. Default: false
|
|
12796
|
+
:param resource_policy: Resource policy to assign to DynamoDB Table. Default: - No resource policy statements are added to the created table.
|
|
12592
12797
|
:param table_class: The table class. Default: TableClass.STANDARD
|
|
12593
12798
|
:param tags: Tags to be applied to the table or replica table. Default: - no tags
|
|
12594
12799
|
'''
|
|
@@ -12612,6 +12817,7 @@ class TableV2(
|
|
|
12612
12817
|
deletion_protection=deletion_protection,
|
|
12613
12818
|
kinesis_stream=kinesis_stream,
|
|
12614
12819
|
point_in_time_recovery=point_in_time_recovery,
|
|
12820
|
+
resource_policy=resource_policy,
|
|
12615
12821
|
table_class=table_class,
|
|
12616
12822
|
tags=tags,
|
|
12617
12823
|
)
|
|
@@ -12780,6 +12986,7 @@ class TableV2(
|
|
|
12780
12986
|
deletion_protection: typing.Optional[builtins.bool] = None,
|
|
12781
12987
|
kinesis_stream: typing.Optional[_IStream_4e2457d2] = None,
|
|
12782
12988
|
point_in_time_recovery: typing.Optional[builtins.bool] = None,
|
|
12989
|
+
resource_policy: typing.Optional[_PolicyDocument_3ac34393] = None,
|
|
12783
12990
|
table_class: typing.Optional[TableClass] = None,
|
|
12784
12991
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
12785
12992
|
) -> None:
|
|
@@ -12794,6 +13001,7 @@ class TableV2(
|
|
|
12794
13001
|
:param deletion_protection: Whether deletion protection is enabled. Default: false
|
|
12795
13002
|
:param kinesis_stream: Kinesis Data Stream to capture item level changes. Default: - no Kinesis Data Stream
|
|
12796
13003
|
:param point_in_time_recovery: Whether point-in-time recovery is enabled. Default: false
|
|
13004
|
+
:param resource_policy: Resource policy to assign to DynamoDB Table. Default: - No resource policy statements are added to the created table.
|
|
12797
13005
|
:param table_class: The table class. Default: TableClass.STANDARD
|
|
12798
13006
|
:param tags: Tags to be applied to the table or replica table. Default: - no tags
|
|
12799
13007
|
'''
|
|
@@ -12805,6 +13013,7 @@ class TableV2(
|
|
|
12805
13013
|
deletion_protection=deletion_protection,
|
|
12806
13014
|
kinesis_stream=kinesis_stream,
|
|
12807
13015
|
point_in_time_recovery=point_in_time_recovery,
|
|
13016
|
+
resource_policy=resource_policy,
|
|
12808
13017
|
table_class=table_class,
|
|
12809
13018
|
tags=tags,
|
|
12810
13019
|
)
|
|
@@ -12876,6 +13085,22 @@ class TableV2(
|
|
|
12876
13085
|
'''
|
|
12877
13086
|
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "tableStreamArn"))
|
|
12878
13087
|
|
|
13088
|
+
@builtins.property
|
|
13089
|
+
@jsii.member(jsii_name="resourcePolicy")
|
|
13090
|
+
def resource_policy(self) -> typing.Optional[_PolicyDocument_3ac34393]:
|
|
13091
|
+
'''The resource policy for the table.
|
|
13092
|
+
|
|
13093
|
+
:attribute: true
|
|
13094
|
+
'''
|
|
13095
|
+
return typing.cast(typing.Optional[_PolicyDocument_3ac34393], jsii.get(self, "resourcePolicy"))
|
|
13096
|
+
|
|
13097
|
+
@resource_policy.setter
|
|
13098
|
+
def resource_policy(self, value: typing.Optional[_PolicyDocument_3ac34393]) -> None:
|
|
13099
|
+
if __debug__:
|
|
13100
|
+
type_hints = typing.get_type_hints(_typecheckingstub__7c681fc6a08524e2909b1c97c77ad38edec11b1f8bd3f666a073a61c09638e19)
|
|
13101
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
13102
|
+
jsii.set(self, "resourcePolicy", value)
|
|
13103
|
+
|
|
12879
13104
|
|
|
12880
13105
|
@jsii.data_type(
|
|
12881
13106
|
jsii_type="aws-cdk-lib.aws_dynamodb.ThroughputProps",
|
|
@@ -13747,6 +13972,7 @@ class OperationsMetricOptions(SystemErrorsForOperationsMetricOptions):
|
|
|
13747
13972
|
"deletion_protection": "deletionProtection",
|
|
13748
13973
|
"kinesis_stream": "kinesisStream",
|
|
13749
13974
|
"point_in_time_recovery": "pointInTimeRecovery",
|
|
13975
|
+
"resource_policy": "resourcePolicy",
|
|
13750
13976
|
"table_class": "tableClass",
|
|
13751
13977
|
"tags": "tags",
|
|
13752
13978
|
"region": "region",
|
|
@@ -13762,6 +13988,7 @@ class ReplicaTableProps(TableOptionsV2):
|
|
|
13762
13988
|
deletion_protection: typing.Optional[builtins.bool] = None,
|
|
13763
13989
|
kinesis_stream: typing.Optional[_IStream_4e2457d2] = None,
|
|
13764
13990
|
point_in_time_recovery: typing.Optional[builtins.bool] = None,
|
|
13991
|
+
resource_policy: typing.Optional[_PolicyDocument_3ac34393] = None,
|
|
13765
13992
|
table_class: typing.Optional[TableClass] = None,
|
|
13766
13993
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
13767
13994
|
region: builtins.str,
|
|
@@ -13774,6 +14001,7 @@ class ReplicaTableProps(TableOptionsV2):
|
|
|
13774
14001
|
:param deletion_protection: Whether deletion protection is enabled. Default: false
|
|
13775
14002
|
:param kinesis_stream: Kinesis Data Stream to capture item level changes. Default: - no Kinesis Data Stream
|
|
13776
14003
|
:param point_in_time_recovery: Whether point-in-time recovery is enabled. Default: false
|
|
14004
|
+
:param resource_policy: Resource policy to assign to DynamoDB Table. Default: - No resource policy statements are added to the created table.
|
|
13777
14005
|
:param table_class: The table class. Default: TableClass.STANDARD
|
|
13778
14006
|
:param tags: Tags to be applied to the table or replica table. Default: - no tags
|
|
13779
14007
|
:param region: The region that the replica table will be created in.
|
|
@@ -13803,6 +14031,7 @@ class ReplicaTableProps(TableOptionsV2):
|
|
|
13803
14031
|
check_type(argname="argument deletion_protection", value=deletion_protection, expected_type=type_hints["deletion_protection"])
|
|
13804
14032
|
check_type(argname="argument kinesis_stream", value=kinesis_stream, expected_type=type_hints["kinesis_stream"])
|
|
13805
14033
|
check_type(argname="argument point_in_time_recovery", value=point_in_time_recovery, expected_type=type_hints["point_in_time_recovery"])
|
|
14034
|
+
check_type(argname="argument resource_policy", value=resource_policy, expected_type=type_hints["resource_policy"])
|
|
13806
14035
|
check_type(argname="argument table_class", value=table_class, expected_type=type_hints["table_class"])
|
|
13807
14036
|
check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
|
|
13808
14037
|
check_type(argname="argument region", value=region, expected_type=type_hints["region"])
|
|
@@ -13819,6 +14048,8 @@ class ReplicaTableProps(TableOptionsV2):
|
|
|
13819
14048
|
self._values["kinesis_stream"] = kinesis_stream
|
|
13820
14049
|
if point_in_time_recovery is not None:
|
|
13821
14050
|
self._values["point_in_time_recovery"] = point_in_time_recovery
|
|
14051
|
+
if resource_policy is not None:
|
|
14052
|
+
self._values["resource_policy"] = resource_policy
|
|
13822
14053
|
if table_class is not None:
|
|
13823
14054
|
self._values["table_class"] = table_class
|
|
13824
14055
|
if tags is not None:
|
|
@@ -13864,6 +14095,17 @@ class ReplicaTableProps(TableOptionsV2):
|
|
|
13864
14095
|
result = self._values.get("point_in_time_recovery")
|
|
13865
14096
|
return typing.cast(typing.Optional[builtins.bool], result)
|
|
13866
14097
|
|
|
14098
|
+
@builtins.property
|
|
14099
|
+
def resource_policy(self) -> typing.Optional[_PolicyDocument_3ac34393]:
|
|
14100
|
+
'''Resource policy to assign to DynamoDB Table.
|
|
14101
|
+
|
|
14102
|
+
:default: - No resource policy statements are added to the created table.
|
|
14103
|
+
|
|
14104
|
+
:see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-replicaspecification.html#cfn-dynamodb-globaltable-replicaspecification-resourcepolicy
|
|
14105
|
+
'''
|
|
14106
|
+
result = self._values.get("resource_policy")
|
|
14107
|
+
return typing.cast(typing.Optional[_PolicyDocument_3ac34393], result)
|
|
14108
|
+
|
|
13867
14109
|
@builtins.property
|
|
13868
14110
|
def table_class(self) -> typing.Optional[TableClass]:
|
|
13869
14111
|
'''The table class.
|
|
@@ -13978,6 +14220,7 @@ class Table(
|
|
|
13978
14220
|
removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
|
|
13979
14221
|
replication_regions: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
13980
14222
|
replication_timeout: typing.Optional[_Duration_4839e8c3] = None,
|
|
14223
|
+
resource_policy: typing.Optional[_PolicyDocument_3ac34393] = None,
|
|
13981
14224
|
stream: typing.Optional[StreamViewType] = None,
|
|
13982
14225
|
table_class: typing.Optional[TableClass] = None,
|
|
13983
14226
|
time_to_live_attribute: typing.Optional[builtins.str] = None,
|
|
@@ -14002,6 +14245,7 @@ class Table(
|
|
|
14002
14245
|
:param removal_policy: The removal policy to apply to the DynamoDB Table. Default: RemovalPolicy.RETAIN
|
|
14003
14246
|
:param replication_regions: Regions where replica tables will be created. Default: - no replica tables are created
|
|
14004
14247
|
:param replication_timeout: The timeout for a table replication operation in a single region. Default: Duration.minutes(30)
|
|
14248
|
+
:param resource_policy: Resource policy to assign to table. Default: - No resource policy statement
|
|
14005
14249
|
:param stream: When an item in the table is modified, StreamViewType determines what information is written to the stream for this table. Default: - streams are disabled unless ``replicationRegions`` is specified
|
|
14006
14250
|
:param table_class: Specify the table class. Default: STANDARD
|
|
14007
14251
|
:param time_to_live_attribute: The name of TTL attribute. Default: - TTL is disabled
|
|
@@ -14028,6 +14272,7 @@ class Table(
|
|
|
14028
14272
|
removal_policy=removal_policy,
|
|
14029
14273
|
replication_regions=replication_regions,
|
|
14030
14274
|
replication_timeout=replication_timeout,
|
|
14275
|
+
resource_policy=resource_policy,
|
|
14031
14276
|
stream=stream,
|
|
14032
14277
|
table_class=table_class,
|
|
14033
14278
|
time_to_live_attribute=time_to_live_attribute,
|
|
@@ -14325,6 +14570,24 @@ class Table(
|
|
|
14325
14570
|
'''
|
|
14326
14571
|
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "tableStreamArn"))
|
|
14327
14572
|
|
|
14573
|
+
@builtins.property
|
|
14574
|
+
@jsii.member(jsii_name="resourcePolicy")
|
|
14575
|
+
def resource_policy(self) -> typing.Optional[_PolicyDocument_3ac34393]:
|
|
14576
|
+
'''Resource policy to assign to DynamoDB Table.
|
|
14577
|
+
|
|
14578
|
+
:default: - No resource policy statements are added to the created table.
|
|
14579
|
+
|
|
14580
|
+
:see: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-resourcepolicy.html
|
|
14581
|
+
'''
|
|
14582
|
+
return typing.cast(typing.Optional[_PolicyDocument_3ac34393], jsii.get(self, "resourcePolicy"))
|
|
14583
|
+
|
|
14584
|
+
@resource_policy.setter
|
|
14585
|
+
def resource_policy(self, value: typing.Optional[_PolicyDocument_3ac34393]) -> None:
|
|
14586
|
+
if __debug__:
|
|
14587
|
+
type_hints = typing.get_type_hints(_typecheckingstub__b85333b9f4a3ca55431a35f4006c1aeb1fcd34f68dee45d5355498d8a1b77806)
|
|
14588
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
14589
|
+
jsii.set(self, "resourcePolicy", value)
|
|
14590
|
+
|
|
14328
14591
|
|
|
14329
14592
|
__all__ = [
|
|
14330
14593
|
"Attribute",
|
|
@@ -15222,6 +15485,12 @@ def _typecheckingstub__2ef78b473dc672e1f0a8737346a30df5180e8a2493195d29264f12c0e
|
|
|
15222
15485
|
"""Type checking stubs"""
|
|
15223
15486
|
pass
|
|
15224
15487
|
|
|
15488
|
+
def _typecheckingstub__9998fbfc8fdb03f3fe5356d84b9b9390d26bd73efb0eab172a4c638aeae5fc01(
|
|
15489
|
+
statement: _PolicyStatement_0fe33853,
|
|
15490
|
+
) -> None:
|
|
15491
|
+
"""Type checking stubs"""
|
|
15492
|
+
pass
|
|
15493
|
+
|
|
15225
15494
|
def _typecheckingstub__ad55d8fd00d859ce3132dc1316888fe9f09c2a3381b167ac699e89edb96ec936(
|
|
15226
15495
|
grantee: _IGrantable_71c4f5de,
|
|
15227
15496
|
*actions: builtins.str,
|
|
@@ -15302,6 +15571,12 @@ def _typecheckingstub__95d33a70a83403322cdc035963638859f588f5d47bae922a6083d3acd
|
|
|
15302
15571
|
"""Type checking stubs"""
|
|
15303
15572
|
pass
|
|
15304
15573
|
|
|
15574
|
+
def _typecheckingstub__385df27fafa61fd6d1e8ebb872e4af26b3119795ee6bb9684e56f891cd86ba94(
|
|
15575
|
+
value: typing.Optional[_PolicyDocument_3ac34393],
|
|
15576
|
+
) -> None:
|
|
15577
|
+
"""Type checking stubs"""
|
|
15578
|
+
pass
|
|
15579
|
+
|
|
15305
15580
|
def _typecheckingstub__12cb4b2677f8954ffc9804c993081f8508388207f5fbd561ee30b05d627d346d(
|
|
15306
15581
|
scope: _constructs_77d1e7e8.Construct,
|
|
15307
15582
|
id: builtins.str,
|
|
@@ -15314,6 +15589,12 @@ def _typecheckingstub__12cb4b2677f8954ffc9804c993081f8508388207f5fbd561ee30b05d6
|
|
|
15314
15589
|
"""Type checking stubs"""
|
|
15315
15590
|
pass
|
|
15316
15591
|
|
|
15592
|
+
def _typecheckingstub__8ddb2818dbfcaf1b52fed7edb8ce145b274541d665df431c417e676bd4f69dec(
|
|
15593
|
+
statement: _PolicyStatement_0fe33853,
|
|
15594
|
+
) -> None:
|
|
15595
|
+
"""Type checking stubs"""
|
|
15596
|
+
pass
|
|
15597
|
+
|
|
15317
15598
|
def _typecheckingstub__8c13e6b8a6a1b9f8e195999afa23db9ba994042dcd37d7e98faab10cbfd364e6(
|
|
15318
15599
|
grantee: _IGrantable_71c4f5de,
|
|
15319
15600
|
*actions: builtins.str,
|
|
@@ -15395,6 +15676,12 @@ def _typecheckingstub__77d4ef5bc85980ee36c06595f45b530b92a1b51437a40ca9dc19d75ed
|
|
|
15395
15676
|
"""Type checking stubs"""
|
|
15396
15677
|
pass
|
|
15397
15678
|
|
|
15679
|
+
def _typecheckingstub__cb944fe3dd5a924cda3570a3226b526ff95d46099b3de4b4ab2a005c34091870(
|
|
15680
|
+
value: typing.Optional[_PolicyDocument_3ac34393],
|
|
15681
|
+
) -> None:
|
|
15682
|
+
"""Type checking stubs"""
|
|
15683
|
+
pass
|
|
15684
|
+
|
|
15398
15685
|
def _typecheckingstub__1cd9eda3b1990473e69185ec48d3b90ce15de00745ae210b41792833c6ec214a(
|
|
15399
15686
|
table_key: _IKey_5f11635f,
|
|
15400
15687
|
replica_key_arns: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
@@ -15417,6 +15704,7 @@ def _typecheckingstub__dadf5733fac70178ab246582a0b777b8c203659229753a8396594d751
|
|
|
15417
15704
|
removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
|
|
15418
15705
|
replication_regions: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
15419
15706
|
replication_timeout: typing.Optional[_Duration_4839e8c3] = None,
|
|
15707
|
+
resource_policy: typing.Optional[_PolicyDocument_3ac34393] = None,
|
|
15420
15708
|
stream: typing.Optional[StreamViewType] = None,
|
|
15421
15709
|
table_class: typing.Optional[TableClass] = None,
|
|
15422
15710
|
time_to_live_attribute: typing.Optional[builtins.str] = None,
|
|
@@ -15432,6 +15720,7 @@ def _typecheckingstub__1b65ee3c8ef5c3b632f4d1fad233252caadaa5f607c0fd92f49b64933
|
|
|
15432
15720
|
deletion_protection: typing.Optional[builtins.bool] = None,
|
|
15433
15721
|
kinesis_stream: typing.Optional[_IStream_4e2457d2] = None,
|
|
15434
15722
|
point_in_time_recovery: typing.Optional[builtins.bool] = None,
|
|
15723
|
+
resource_policy: typing.Optional[_PolicyDocument_3ac34393] = None,
|
|
15435
15724
|
table_class: typing.Optional[TableClass] = None,
|
|
15436
15725
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
15437
15726
|
) -> None:
|
|
@@ -15453,6 +15742,7 @@ def _typecheckingstub__00475a5e14af8c4c7049089f69b3d29ad81bc91e7e1f0a5a5b7b794a5
|
|
|
15453
15742
|
removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
|
|
15454
15743
|
replication_regions: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
15455
15744
|
replication_timeout: typing.Optional[_Duration_4839e8c3] = None,
|
|
15745
|
+
resource_policy: typing.Optional[_PolicyDocument_3ac34393] = None,
|
|
15456
15746
|
stream: typing.Optional[StreamViewType] = None,
|
|
15457
15747
|
table_class: typing.Optional[TableClass] = None,
|
|
15458
15748
|
time_to_live_attribute: typing.Optional[builtins.str] = None,
|
|
@@ -15470,6 +15760,7 @@ def _typecheckingstub__205e5df85e01c6c2d91d5922a57e3ed5903027748a8b3222622bebd10
|
|
|
15470
15760
|
deletion_protection: typing.Optional[builtins.bool] = None,
|
|
15471
15761
|
kinesis_stream: typing.Optional[_IStream_4e2457d2] = None,
|
|
15472
15762
|
point_in_time_recovery: typing.Optional[builtins.bool] = None,
|
|
15763
|
+
resource_policy: typing.Optional[_PolicyDocument_3ac34393] = None,
|
|
15473
15764
|
table_class: typing.Optional[TableClass] = None,
|
|
15474
15765
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
15475
15766
|
partition_key: typing.Union[Attribute, typing.Dict[builtins.str, typing.Any]],
|
|
@@ -15506,6 +15797,7 @@ def _typecheckingstub__9ea47b003cdb497ff620f1410260696f97dbb2b00fa8558235f23771f
|
|
|
15506
15797
|
deletion_protection: typing.Optional[builtins.bool] = None,
|
|
15507
15798
|
kinesis_stream: typing.Optional[_IStream_4e2457d2] = None,
|
|
15508
15799
|
point_in_time_recovery: typing.Optional[builtins.bool] = None,
|
|
15800
|
+
resource_policy: typing.Optional[_PolicyDocument_3ac34393] = None,
|
|
15509
15801
|
table_class: typing.Optional[TableClass] = None,
|
|
15510
15802
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
15511
15803
|
) -> None:
|
|
@@ -15550,6 +15842,12 @@ def _typecheckingstub__7cb08c3fe1f7c7db5d9459ba46cc1e0bd7ab496a45ecca2bb34f27686
|
|
|
15550
15842
|
"""Type checking stubs"""
|
|
15551
15843
|
pass
|
|
15552
15844
|
|
|
15845
|
+
def _typecheckingstub__7c681fc6a08524e2909b1c97c77ad38edec11b1f8bd3f666a073a61c09638e19(
|
|
15846
|
+
value: typing.Optional[_PolicyDocument_3ac34393],
|
|
15847
|
+
) -> None:
|
|
15848
|
+
"""Type checking stubs"""
|
|
15849
|
+
pass
|
|
15850
|
+
|
|
15553
15851
|
def _typecheckingstub__097767ff78845d4b738433212bfcf5a1c0221ad14d190faa8e3494ba577c4431(
|
|
15554
15852
|
*,
|
|
15555
15853
|
read_capacity: Capacity,
|
|
@@ -15626,6 +15924,7 @@ def _typecheckingstub__7500a741eaeb840f48aaefcd8fc5fbbb8b1082165601116ca363e5ddb
|
|
|
15626
15924
|
deletion_protection: typing.Optional[builtins.bool] = None,
|
|
15627
15925
|
kinesis_stream: typing.Optional[_IStream_4e2457d2] = None,
|
|
15628
15926
|
point_in_time_recovery: typing.Optional[builtins.bool] = None,
|
|
15927
|
+
resource_policy: typing.Optional[_PolicyDocument_3ac34393] = None,
|
|
15629
15928
|
table_class: typing.Optional[TableClass] = None,
|
|
15630
15929
|
tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
15631
15930
|
region: builtins.str,
|
|
@@ -15652,6 +15951,7 @@ def _typecheckingstub__b92f0ed514f00b57a2a41d754e55fe495d22b05b0ad4711b80ce00457
|
|
|
15652
15951
|
removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
|
|
15653
15952
|
replication_regions: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
15654
15953
|
replication_timeout: typing.Optional[_Duration_4839e8c3] = None,
|
|
15954
|
+
resource_policy: typing.Optional[_PolicyDocument_3ac34393] = None,
|
|
15655
15955
|
stream: typing.Optional[StreamViewType] = None,
|
|
15656
15956
|
table_class: typing.Optional[TableClass] = None,
|
|
15657
15957
|
time_to_live_attribute: typing.Optional[builtins.str] = None,
|
|
@@ -15717,3 +16017,9 @@ def _typecheckingstub__9bf5dafcde17b7b65610795b8d251399ace67acb6de4e8ea9af3afe7b
|
|
|
15717
16017
|
) -> None:
|
|
15718
16018
|
"""Type checking stubs"""
|
|
15719
16019
|
pass
|
|
16020
|
+
|
|
16021
|
+
def _typecheckingstub__b85333b9f4a3ca55431a35f4006c1aeb1fcd34f68dee45d5355498d8a1b77806(
|
|
16022
|
+
value: typing.Optional[_PolicyDocument_3ac34393],
|
|
16023
|
+
) -> None:
|
|
16024
|
+
"""Type checking stubs"""
|
|
16025
|
+
pass
|