保持されたメッセージポリシーの例 - AWS IoT Core

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

保持されたメッセージポリシーの例

保持されているメッセージの使用には、特定のポリシーが必要です。保持メッセージは、 RETAINフラグが設定され、 によって保存されるMQTTメッセージです。 AWS IoT Core。 このセクションでは、保持されたメッセージの一般的な使用を許可するポリシーの例を示します。

保持されたメッセージを接続して発行するためのポリシー

デバイスが保持されたメッセージを発行するには、デバイスがMQTT保持されたメッセージを接続、発行 (任意のMQTTメッセージ)、および発行できる必要があります。次のポリシーにより、トピックに対するアクセス権限が付与されます。クライアントdevice1device/sample/configuration。接続のアクセス許可を付与する別の例については、接続および公開ポリシーの例を参照。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Connect" ], "Resource": [ "arn:aws:iot:us-east-1:123456789012:client/device1" ] }, { "Effect": "Allow", "Action": [ "iot:Publish", "iot:RetainPublish" ], "Resource": [ "arn:aws:iot:us-east-1:123456789012:topic/device/sample/configuration" ] } ] }

保持された Will メッセージを接続して発行するためのポリシー

クライアントは、次のメッセージを設定できます。 AWS IoT Core クライアントが予期せず切断すると、 は発行します。MQTT はこのようなメッセージを Will メッセージ と呼び出します。それらを包括するために、クライアントは、接続許可に追加して追加条件を持つ必要があります。

次のポリシードキュメントは、トピック で識別される Will メッセージに接続して発行するアクセス許可をすべてのクライアントに付与willします。 AWS IoT Core も保持されます。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Connect" ], "Resource": [ "arn:aws:iot:us-east-1:123456789012:client/device1" ], "Condition": { "ForAllValues:StringEquals": { "iot:ConnectAttributes": [ "LastWill" ] } } }, { "Effect": "Allow", "Action": [ "iot:Publish", "iot:RetainPublish" ], "Resource": [ "arn:aws:iot:us-east-1:123456789012:topic/will" ] } ] }

保持されたメッセージを一覧表示して取得するためのポリシー

サービスとアプリケーションは、 ListRetainedMessagesおよび を呼び出すことで、 MQTT クライアントをサポートする必要なく、保持されたメッセージにアクセスできますGetRetainedMessage。これらのアクションを呼び出すサービスとアプリケーションは、次の例のようなポリシーを使用して認証される必要があります。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:ListRetainedMessages" ], "Resource": [ "arn:aws:iot:us-east-1:123456789012:client/device1" ], }, { "Effect": "Allow", "Action": [ "iot:GetRetainedMessage" ], "Resource": [ "arn:aws:iot:us-east-1:123456789012:topic/foo" ] } ] }