AWS - SNS

Amazon Web Services Simple Notification Service (SNS).

IT Services · AWS - SNS

Details

IDAWS - SNS
ProviderAmazon
CategoryIT Services
From Version6.5.0
Docker Imagedemisto/boto3py3:1.0.0.10221838
Supported ModulesAgentix XSIAM

README

Amazon Web Services Simple Notification Service (SNS)

For more information regarding the AWS SNS service, please visit the official documentation found here.

For detailed instructions about setting up authentication, see: AWS Integrations - Authentication.

Configure AWS - SNS in Cortex

Parameter Description Required
AWS Default Region   True
Role Arn When using Access Key and Secret Key, there is no need to use Role Arn False
Role Session Name   False
Access Key   True
Secret Key   True
Role Session Duration   False
Timeout The time in seconds till a timeout exception is reached. You can specify just the read timeout (for example 60) or also the connect timeout followed after a comma (for example 60,10). If a connect timeout is not specified, a default of 10 second will be used. False
Retries The maximum number of retry attempts when connection or throttling errors are encountered. Set to 0 to disable retries. The default value is 5 and the limit is 10. Note: Increasing the number of retries will increase the execution time. False
AWS STS Regional Endpoints Sets the AWS_STS_REGIONAL_ENDPOINTS environment variable to specify the AWS STS endpoint resolution logic. By default, this option is set to “legacy” in AWS. Leave empty if the environment variable is already set using server configuration. False
Use system proxy settings   False
Trust any certificate (not secure)   False

Commands

You can execute these commands from the CLI, as part of an automation, or in a playbook.
After you successfully execute a command, a DBot message appears in the War Room with the command details.

aws-sns-create-subscription


Subscribes an endpoint to an Amazon SNS topic. If the endpoint type is HTTP/S or email, or if the endpoint and the topic are not in the same Amazon Web Services account, the endpoint owner must run the ConfirmSubscription action to confirm the subscription.

Base Command

aws-sns-create-subscription

Input

Argument Name Description Required
topicArn The ARN of the topic you want to subscribe to. Required
protocol The protocol that you want to use. Possible values are: http, https, email, email-json, sms, sqs, application, lambda, firehose. Required
endpoint The endpoint that you want to receive notifications. Optional
returnSubscriptionArn Sets whether the response from the Subscribe request includes the subscription ARN, even if the subscription is not yet confirmed. Possible values are: True, False. Optional
deliveryPolicy The policy that defines how Amazon SNS retries failed deliveries to HTTP/S endpoints. Optional
filterPolicy The simple JSON object that lets your subscriber receive only a subset of messages, rather than receiving every message published to the topic. Optional
rawMessageDelivery When set to true , enables raw message delivery to Amazon SQS or HTTP/S endpoints. Possible values are: True, False. Optional
redrivePolicy When specified, sends undeliverable messages to the specified Amazon SQS dead-letter queue. Optional
subscriptionRoleArn The ARN of the IAM role that has the following: 1. Permission to write to the Kinesis Data Firehose delivery stream 2. Amazon SNS listed as a trusted entity. Optional
region The AWS Region, if not specified the default region will be used. Optional
roleArn The Amazon Resource Name (ARN) of the role to assume. Optional
roleSessionName An identifier for the assumed role session. Optional
roleSessionDuration The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) up to the maximum session duration setting for the role. Optional

Context Output

Path Type Description
AWS.SNS.Subscriptions.SubscriptionArn string The Subscription Arn

Command Example


#### Human Readable Output

### aws-sns-list-topics

***
Returns a list of the requester's topics.

#### Base Command

`aws-sns-list-topics`

#### Input

| **Argument Name** | **Description** | **Required** |
| --- | --- | --- |
| nextToken | Token returned by the previous ListTopics request. | Optional |
| region | The AWS Region, if not specified the default region will be used. | Optional |
| roleArn | The Amazon Resource Name (ARN) of the role to assume. | Optional |
| roleSessionName | An identifier for the assumed role session. | Optional |
| roleSessionDuration | The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) up to the maximum session duration setting for the role. | Optional |

#### Context Output

| **Path** | **Type** | **Description** |
| --- | --- | --- |
| AWS.SNS.Topics.TopicArn | string | The Topic ARN |

#### Command Example

Human Readable Output

aws-sns-send-message


Sends a message to an Amazon SNS topic, a text message (SMS message) directly to a phone number, or a message to a mobile platform endpoint (when you specify the TargetArn ).

Base Command

aws-sns-send-message

Input

Argument Name Description Required
topicArn The topic you want to publish to. If you don’t specify a value for the TopicArn parameter, you must specify a value for the PhoneNumber or TargetArn parameters. Optional
targetArn If you don’t specify a value for the TargetArn parameter, you must specify a value for the PhoneNumber or TopicArn parameters. Optional
phoneNumber The phone number to which you want to deliver an SMS message. Use E.164 format. Optional
message The message you want to send. Required
subject Optional parameter to be used as the “Subject” line when the message is delivered to email endpoints. Optional
messageStructure Set MessageStructure to json if you want to send a different message for each protocol. Optional
messageDeduplicationId This parameter applies only to FIFO (first-in-first-out) topics. Optional
messageGroupId This parameter applies only to FIFO (first-in-first-out) topics. Optional
region The AWS Region, if not specified the default region will be used. Optional
roleArn The Amazon Resource Name (ARN) of the role to assume. Optional
roleSessionName An identifier for the assumed role session. Optional
roleSessionDuration The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) up to the maximum session duration setting for the role. Optional

Context Output

Path Type Description
AWS.SNS.SentMessages string Unique identifier assigned to the published message.

Command Example


#### Human Readable Output

### aws-sns-create-topic

***
Creates a new a topic to which notifications can be published. You can specify the attribute to create FIFO topic.

#### Base Command

`aws-sns-create-topic`

#### Input

| **Argument Name** | **Description** | **Required** |
| --- | --- | --- |
| topicName | The name of the new topic. | Required |
| deliveryPolicy | The policy that defines how Amazon SNS retries failed deliveries to HTTP/S endpoints. | Optional |
| displayName | The display name to use for a topic with SMS subscriptions. | Optional |
| fifoTopic | Set to true to create a FIFO topic. Possible values are: true, false. | Optional |
| policy | The policy that defines who can access your topic. By default, only the topic owner can publish or subscribe to the topic. | Optional |
| kmsMasterKeyId | The ID of an Amazon Web Services managed customer master key (CMK) for Amazon SNS or a custom CMK. | Optional |
| contentBasedDeduplication | Enables content-based deduplication. Possible values are: True, False. | Optional |
| region | The AWS Region, if not specified the default region will be used. | Optional |
| roleArn | The Amazon Resource Name (ARN) of the role to assume. | Optional |
| roleSessionName | An identifier for the assumed role session. | Optional |
| roleSessionDuration | The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) up to the maximum session duration setting for the role. | Optional |

#### Context Output

| **Path** | **Type** | **Description** |
| --- | --- | --- |
| AWS.SNS.Topic.TopicArn | unknown | The ARN of the created Amazon SNS topic. |

#### Command Example

Human Readable Output

aws-sns-delete-topic


Deletes a topic and all its subscriptions.

Base Command

aws-sns-delete-topic

Input

Argument Name Description Required
topicArn The ARN of the topic you want to delete. Required
region The AWS Region, if not specified the default region will be used. Optional
roleArn The Amazon Resource Name (ARN) of the role to assume. Optional
roleSessionName An identifier for the assumed role session. Optional
roleSessionDuration The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) up to the maximum session duration setting for the role. Optional

Context Output

There is no context output for this command.

Command Example


#### Human Readable Output

### aws-sns-list-subscriptions-by-topic

***
Returns a list of the subscriptions to a specific topic. Each call returns a limited list of subscriptions, up to 100.

#### Base Command

`aws-sns-list-subscriptions-by-topic`

#### Input

| **Argument Name** | **Description** | **Required** |
| --- | --- | --- |
| topicArn | The ARN of the topic for which you wish to find subscriptions. | Required |
| nextToken | Token returned by the previous ListTopics request. | Optional |
| region | The AWS Region, if not specified the default region will be used. | Optional |
| roleArn | The Amazon Resource Name (ARN) of the role to assume. | Optional |
| roleSessionName | An identifier for the assumed role session. | Optional |
| roleSessionDuration | The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) up to the maximum session duration setting for the role. | Optional |

#### Context Output

| **Path** | **Type** | **Description** |
| --- | --- | --- |
| AWS.SNS.Subscriptions.SubscriptionArn | unknown | The Subscription Arn |

#### Command Example

Human Readable Output

Configuration parameters

  • defaultRegion — AWS Default Region (required)
  • roleArn — Role Arn
  • roleSessionName — Role Session Name
  • credentials — Access Key (required)
  • sessionDuration — Role Session Duration
  • timeout — Timeout
  • retries — Retries
  • sts_regional_endpoint — AWS STS Regional Endpoints
  • proxy — Use system proxy settings
  • insecure — Trust any certificate (not secure)

Commands (6)

  • aws-sns-create-subscription

    Subscribes an endpoint to an Amazon SNS topic. If the endpoint type is HTTP/S or email, or if the endpoint and the topic are not in the same Amazon Web Services account, the endpoint owner must run the ConfirmSubscription action to confirm the subscription.

  • aws-sns-create-topic

    Creates a new a topic to which notifications can be published. You can specify the attribute to create FIFO topic.

  • aws-sns-delete-topic

    Deletes a topic and all its subscriptions.

  • aws-sns-list-subscriptions-by-topic

    Returns a list of the subscriptions to a specific topic. Each call returns a limited list of subscriptions, up to 100.

  • aws-sns-list-topics

    Returns a list of the requester's topics.

  • aws-sns-send-message

    Sends a message to an Amazon SNS topic, a text message (SMS message) directly to a phone number, or a message to a mobile platform endpoint (when you specify the TargetArn ).

category: IT Services
provider: Amazon
commonfields:
  id: AWS - SNS
  version: -1
configuration:
- display: AWS Default Region
  name: defaultRegion
  type: 0
  required: true
- additionalinfo: When using Access Key and Secret Key, there is no need to use Role Arn
  display: Role Arn
  name: roleArn
  type: 0
  required: false
- display: Role Session Name
  name: roleSessionName
  type: 0
  required: false
- display: Access Key
  name: credentials
  required: true
  type: 9
  displaypassword: Secret Key
- display: Role Session Duration
  name: sessionDuration
  required: false
  type: 0
- display: Timeout
  name: timeout
  type: 0
  required: false
  additionalinfo: The time in seconds till a timeout exception is reached. You can specify just the read timeout (for example 60) or also the connect timeout followed after a comma (for example 60,10). If a connect timeout is not specified, a default of 10 second will be used.
- additionalinfo: 'The maximum number of retry attempts when connection or throttling errors are encountered. Set to 0 to disable retries. The default value is 5 and the limit is 10. Note: Increasing the number of retries will increase the execution time.'
  display: Retries
  name: retries
  type: 0
  required: false
  defaultvalue: '5'
- additionalinfo: 'Sets the AWS_STS_REGIONAL_ENDPOINTS environment variable to specify the AWS STS endpoint resolution logic. By default, this option is set to “legacy” in AWS. Leave empty if the environment variable is already set using server configuration.'
  display: AWS STS Regional Endpoints
  name: sts_regional_endpoint
  type: 15
  required: false
  options:
  - legacy
  - regional
  section: Connect
- display: Use system proxy settings
  name: proxy
  type: 8
  required: false
- display: Trust any certificate (not secure)
  name: insecure
  type: 8
  required: false
description: Amazon Web Services Simple Notification Service (SNS).
display: AWS - SNS
name: AWS - SNS
script:
  commands:
  - arguments:
    - description: The ARN of the topic you want to subscribe to.
      name: topicArn
      required: true
    - auto: PREDEFINED
      description: The protocol that you want to use.
      name: protocol
      predefined:
      - http
      - https
      - email
      - email-json
      - sms
      - sqs
      - application
      - lambda
      - firehose
      required: true
    - description: The endpoint that you want to receive notifications.
      name: endpoint
    - auto: PREDEFINED
      description: Sets whether the response from the Subscribe request includes the subscription ARN, even if the subscription is not yet confirmed.
      name: returnSubscriptionArn
      predefined:
      - 'True'
      - 'False'
    - description: The policy that defines how Amazon SNS retries failed deliveries to HTTP/S endpoints.
      name: deliveryPolicy
    - description: The simple JSON object that lets your subscriber receive only a subset of messages, rather than receiving every message published to the topic.
      name: filterPolicy
    - auto: PREDEFINED
      description: When set to true , enables raw message delivery to Amazon SQS or HTTP/S endpoints.
      name: rawMessageDelivery
      predefined:
      - 'True'
      - 'False'
    - description: When specified, sends undeliverable messages to the specified Amazon SQS dead-letter queue.
      name: redrivePolicy
    - description: 'The ARN of the IAM role that has the following: 1. Permission to write to the Kinesis Data Firehose delivery stream 2. Amazon SNS listed as a trusted entity.'
      name: subscriptionRoleArn
    - description: The AWS Region, if not specified the default region will be used.
      name: region
    - description: The Amazon Resource Name (ARN) of the role to assume.
      name: roleArn
    - description: An identifier for the assumed role session.
      name: roleSessionName
    - description: The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) up to the maximum session duration setting for the role.
      name: roleSessionDuration
    description: Subscribes an endpoint to an Amazon SNS topic. If the endpoint type is HTTP/S or email, or if the endpoint and the topic are not in the same Amazon Web Services account, the endpoint owner must run the ConfirmSubscription action to confirm the subscription.
    name: aws-sns-create-subscription
    outputs:
    - contextPath: AWS.SNS.Subscriptions.SubscriptionArn
      description: The Subscription Arn.
      type: string
  - arguments:
    - description: Token returned by the previous ListTopics request.
      name: nextToken
    - description: The AWS Region, if not specified the default region will be used.
      name: region
    - description: The Amazon Resource Name (ARN) of the role to assume.
      name: roleArn
    - description: An identifier for the assumed role session.
      name: roleSessionName
    - description: The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) up to the maximum session duration setting for the role.
      name: roleSessionDuration
    description: Returns a list of the requester's topics.
    name: aws-sns-list-topics
    outputs:
    - contextPath: AWS.SNS.Topics.TopicArn
      description: The Topic ARN.
      type: string
  - arguments:
    - description: The topic you want to publish to. If you don't specify a value for the TopicArn parameter, you must specify a value for the PhoneNumber or TargetArn parameters.
      name: topicArn
    - description: If you don't specify a value for the TargetArn parameter, you must specify a value for the PhoneNumber or TopicArn parameters.
      name: targetArn
    - description: The phone number to which you want to deliver an SMS message. Use E.164 format.
      name: phoneNumber
    - description: The message you want to send.
      name: message
      required: true
    - description: Optional parameter to be used as the "Subject" line when the message is delivered to email endpoints.
      name: subject
    - description: Set MessageStructure to json if you want to send a different message for each protocol.
      name: messageStructure
    - description: This parameter applies only to FIFO (first-in-first-out) topics.
      name: messageDeduplicationId
    - description: This parameter applies only to FIFO (first-in-first-out) topics.
      name: messageGroupId
    - description: The AWS Region, if not specified the default region will be used.
      name: region
    - description: The Amazon Resource Name (ARN) of the role to assume.
      name: roleArn
    - description: An identifier for the assumed role session.
      name: roleSessionName
    - description: The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) up to the maximum session duration setting for the role.
      name: roleSessionDuration
    description: Sends a message to an Amazon SNS topic, a text message (SMS message) directly to a phone number, or a message to a mobile platform endpoint (when you specify the TargetArn ).
    name: aws-sns-send-message
    outputs:
    - contextPath: AWS.SNS.SentMessages
      description: Unique identifier assigned to the published message.
      type: string
  - arguments:
    - description: The name of the new topic.
      name: topicName
      required: true
    - description: The policy that defines how Amazon SNS retries failed deliveries to HTTP/S endpoints.
      name: deliveryPolicy
    - description: The display name to use for a topic with SMS subscriptions.
      name: displayName
    - auto: PREDEFINED
      description: Set to true to create a FIFO topic.
      name: fifoTopic
      predefined:
      - 'true'
      - 'false'
    - description: The policy that defines who can access your topic. By default, only the topic owner can publish or subscribe to the topic.
      name: policy
    - description: The ID of an Amazon Web Services managed customer master key (CMK) for Amazon SNS or a custom CMK.
      name: kmsMasterKeyId
    - auto: PREDEFINED
      description: Enables content-based deduplication.
      name: contentBasedDeduplication
      predefined:
      - 'True'
      - 'False'
    - description: The AWS Region, if not specified the default region will be used.
      name: region
    - description: The Amazon Resource Name (ARN) of the role to assume.
      name: roleArn
    - description: An identifier for the assumed role session.
      name: roleSessionName
    - description: The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) up to the maximum session duration setting for the role.
      name: roleSessionDuration
    description: Creates a new a topic to which notifications can be published. You can specify the attribute to create FIFO topic.
    name: aws-sns-create-topic
    outputs:
    - contextPath: AWS.SNS.Topic.TopicArn
      description: The ARN of the created Amazon SNS topic.
  - arguments:
    - description: The ARN of the topic you want to delete.
      name: topicArn
      required: true
    - description: The AWS Region, if not specified the default region will be used.
      name: region
    - description: The Amazon Resource Name (ARN) of the role to assume.
      name: roleArn
    - description: An identifier for the assumed role session.
      name: roleSessionName
    - description: The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) up to the maximum session duration setting for the role.
      name: roleSessionDuration
    description: Deletes a topic and all its subscriptions.
    name: aws-sns-delete-topic
  - arguments:
    - description: The ARN of the topic for which you wish to find subscriptions.
      name: topicArn
      required: true
    - description: Token returned by the previous ListTopics request.
      name: nextToken
    - description: The AWS Region, if not specified the default region will be used.
      name: region
    - description: The Amazon Resource Name (ARN) of the role to assume.
      name: roleArn
    - description: An identifier for the assumed role session.
      name: roleSessionName
    - description: The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) up to the maximum session duration setting for the role.
      name: roleSessionDuration
    description: Returns a list of the subscriptions to a specific topic. Each call returns a limited list of subscriptions, up to 100.
    name: aws-sns-list-subscriptions-by-topic
    outputs:
    - contextPath: AWS.SNS.Subscriptions.SubscriptionArn
      description: The Subscription Arn.
  dockerimage: demisto/boto3py3:1.0.0.10221838
  script: ''
  subtype: python3
  type: python
fromversion: 6.5.0
tests:
- No tests (auto formatted)