

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# SNS
<a name="sns-rule-action"></a>

SNS (`sns`) アクションは、Amazon Simple Notification Service (Amazon SNS) プッシュ通知として MQTT メッセージからデータを送信します。

SNS アクションを使用してルールを作成およびテストする方法を示すチュートリアルに従うことができます。詳細については、「[チュートリアル: Amazon SNS 通知の送信](iot-sns-rule.md)」を参照してください。

**注記**  
SNS アクションは、[Amazon SNS FIFO (First-In-First-Out) トピック](https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html)をサポートしていません。ルールエンジンは完全に分散されたサービスであるため、SNS アクションが呼び出されたときのメッセージ順序の保証はありません。

## 要件
<a name="sns-rule-action-requirements"></a>

このルールアクションには、以下の要件があります。
+ オペレーションを実行するために が引き受け AWS IoT ることができる IAM ロール`sns:Publish`。詳細については、「[必要なアクセスを AWS IoT ルールに付与する](iot-create-role.md)」を参照してください。

   AWS IoT コンソールで、このルールアクションを実行することを に許可 AWS IoT するロールを選択または作成できます。
+  AWS KMS カスタマーマネージドマネージドを使用して Amazon SNS AWS KMS key に保管中のデータを暗号化する場合、サービスには AWS KMS key 発信者に代わって を使用するアクセス許可が必要です。詳細については、[*Amazon Simple Notification Service Developer Guide*](Amazon 簡易通知サービスデベロッパーガイド)の[[Key management](https://docs.aws.amazon.com/sns/latest/dg/sns-key-management.html)](キー管理)を参照してください。

## パラメータ
<a name="sns-rule-action-parameters"></a>

このアクションを使用して AWS IoT ルールを作成するときは、次の情報を指定する必要があります。

`targetArn`  
プッシュ通知の送信先として指定する SNS トピックまたは個々のデバイス。  
[置換テンプレート](iot-substitution-templates.md)をサポート: API および AWS CLI のみ

`messageFormat`  
(オプション) メッセージ形式。Amazon SNS ではこの設定を使用して、ペイロードを解析して関連するプラットフォーム固有の部分をペイロードから抽出するかどうかを判断します。有効な値: `JSON`、`RAW`。デフォルトは `RAW` です。  
[置換テンプレート](iot-substitution-templates.md)をサポート: いいえ

`roleArn`  
SNS へのアクセスを許可する IAM ロール。詳細については、「[要件](#sns-rule-action-requirements)」を参照してください。  
[置換テンプレート](iot-substitution-templates.md)をサポート: いいえ

## 例
<a name="sns-rule-action-examples"></a>

次の JSON の例では、 AWS IoT ルールで SNS アクションを定義します。

```
{
    "topicRulePayload": {
        "sql": "SELECT * FROM 'some/topic'", 
        "ruleDisabled": false, 
        "awsIotSqlVersion": "2016-03-23",
        "actions": [
            {
                "sns": {
                    "targetArn": "arn:aws:sns:us-east-2:123456789012:my_sns_topic", 
                    "roleArn": "arn:aws:iam::123456789012:role/aws_iot_sns"
                }
            }
        ]
    }
}
```

次の JSON の例では、 AWS IoT ルールで置換テンプレートを使用して SNS アクションを定義します。

```
{
    "topicRulePayload": {
        "sql": "SELECT * FROM 'some/topic'",
        "ruleDisabled": false,
        "awsIotSqlVersion": "2016-03-23",
        "actions": [
            {
                "sns": {
                    "targetArn": "arn:aws:sns:us-east-1:123456789012:${topic()}",
                    "messageFormat": "JSON",
                    "roleArn": "arn:aws:iam::123456789012:role/aws_iot_sns"
                }
            }
        ]
    }
}
```

## 関連情報
<a name="sns-rule-action-see-also"></a>
+ *Amazon Simple Notification Service デベロッパーガイド*の [Amazon Simple Notification Service とは](https://docs.aws.amazon.com/sns/latest/dg/)
+ [チュートリアル: Amazon SNS 通知の送信](iot-sns-rule.md)