AWSConfigRemediation-EncryptSNSTopic - Amazon Systems Manager Automation runbook reference
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).



The AWSConfigRemediation-EncryptSNSTopic runbook enables encryption on the Amazon Simple Notification Service (Amazon SNS) topic you specify using an Amazon Key Management Service (Amazon KMS) customer managed key. This runbook should only be used as a baseline to ensure that your Amazon SNS topics are encrypted according to minimum recommended security best practices. We recommend encrypting multiple topics with different customer managed keys.

Run this Automation (console)

Document type





Linux, macOS, Windows


  • AutomationAssumeRole

    Type: String

    Allowed values: ^arn:(?:aws|aws-us-gov|aws-cn):iam::\d{12}:role\/[\w+=,.@/-]+$

    Description: (Required) The Amazon Resource Name (ARN) of the Amazon Identity and Access Management (IAM) role that allows Systems Manager Automation to perform the actions on your behalf.

  • KmsKeyArn

    Type: String

    Description: (Required) The Amazon Resource Name (ARN) of the Amazon KMS customer managed key you want to use to encrypt the Amazon SNS topic.

  • TopicArn

    Type: String

    Description: (Required) The ARN of the Amazon SNS topic you want to encrypt.

Required IAM permissions

The AutomationAssumeRole parameter requires the following actions to successfully use the runbook.

  • ssm:StartAutomationExecution

  • ssm:GetAutomationExecution

  • sns:GetTopicAttributes

  • sns:SetTopicAttributes

Document Steps

  • aws:executeAwsApi - Encrypts the Amazon SNS topic you specify in the TopicArn parameter.

  • aws:assertAwsResourceProperty - Confirms encryption is enabled on the Amazon SNS topic.