Skip to content
v2.273.0

StreamSpecificationProperty Struct ​

Represents the DynamoDB Streams configuration for a table in DynamoDB.

Example ​

ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_dynamodb as dynamodb } from 'aws-cdk-lib';

declare const policyDocument: any;
const streamSpecificationProperty: dynamodb.CfnTable.StreamSpecificationProperty = {
  streamViewType: 'streamViewType',

  // the properties below are optional
  resourcePolicy: {
    policyDocument: policyDocument,
  },
  tags: [{
    key: 'key',
    value: 'value',
  }],
};

Properties ​

resourcePolicyIResolvable | CfnTable.ResourcePolicyPropertyresource_policytyping.Union[IResolvable, ResourcePolicyProperty]resourcePolicyIResolvableResourcePolicyIResolvableResourcePolicyinterface{}#
Creates or updates a resource-based policy document that contains the permissions for DynamoDB resources, such as a table's streams.
notes

Resource-based policies let you define access permissions by specifying who has access to each resource, and the actions they are allowed to perform on each resource.

When you remove the StreamSpecification property from the template, DynamoDB disables the stream but retains any attached resource policy until the stream is deleted after 24 hours. When you modify the StreamViewType property, DynamoDB creates a new stream and retains the old stream's resource policy. The old stream and its resource policy are deleted after the 24-hour retention period.

In a CloudFormation template, you can provide the policy in JSON or YAML format because CloudFormation converts YAML to JSON before submitting it to DynamoDB . For more information about resource-based policies, see Using resource-based policies for DynamoDB and Resource-based policy examples .

streamViewTypestringstream_view_typestrstreamViewTypeStringStreamViewTypestringStreamViewType*stringrequired#
When an item in the table is modified, `StreamViewType` determines what information is written to the stream for this table.
notes

Valid values for StreamViewType are:

  • KEYS_ONLY - Only the key attributes of the modified item are written to the stream.
  • NEW_IMAGE - The entire item, as it appears after it was modified, is written to the stream.
  • OLD_IMAGE - The entire item, as it appeared before it was modified, is written to the stream.
  • NEW_AND_OLD_IMAGES - Both the new and the old item images of the item are written to the stream.
tagsCfnTag[]tagstyping.List[CfnTag]tagsList<CfnTag>TagsCfnTag[]Tags*[]CfnTag#