Skip to content
v2.274.0

TopicPolicyProps Struct ​

Properties to associate SNS topics with a policy.

Example ​

ts
const topic = new sns.Topic(this, 'Topic');
const policyDocument = new iam.PolicyDocument({
  assignSids: true,
  statements: [
    new iam.PolicyStatement({
      actions: ["sns:Subscribe"],
      principals: [new iam.AnyPrincipal()],
      resources: [topic.topicArn],
    }),
  ],
});

const topicPolicy = new sns.TopicPolicy(this, 'Policy', {
  topics: [topic],
  policyDocument,
});

Properties ​

enforceSSLoptionalbooleanenforce_ssloptionalboolenforceSSLoptionalBooleanEnforceSSLoptionalboolEnforceSSLoptional*bool= false#
Adds a statement to enforce encryption of data in transit when publishing to the topic.
policyDocumentoptionalPolicyDocumentpolicy_documentoptionalPolicyDocumentpolicyDocumentoptionalPolicyDocumentPolicyDocumentoptionalPolicyDocumentPolicyDocumentoptionalPolicyDocument#
IAM policy document to apply to topic(s).

Default: empty policy document

topicsITopic[]topicstyping.List[ITopic]topicsList<ITopic>TopicsITopic[]Topics*[]ITopicrequired#
The set of topics this policy applies to.