翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
保持されたメッセージポリシーの例
保持されているメッセージの使用には、特定のポリシーが必要です。保持されるメッセージは、RETAIN フラグが設定され、 によって保存される MQTT メッセージです AWS IoT Core。このセクションでは、保持されたメッセージの一般的な使用を許可するポリシーの例を紹介します。
保持されたメッセージを接続して発行するためのポリシー
デバイスが保持されたメッセージを発行するには、デバイスが、接続、発行 (任意のMQTTメッセージ)、そして保持されたMQTTメッセージを発行できる必要があります。次のポリシーにより、トピックに対するアクセス権限が付与されます。クライアントdevice1
にdevice/sample/configuration
。接続のアクセス許可を付与する別の例については、接続および公開ポリシーの例を参照。
- JSON
-
-
{
"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 はこのようなメッセージをウィルメッセージと呼びます。それらを包括するために、クライアントは、接続許可に追加して追加条件を持つ必要があります。
次のポリシードキュメントは、 AWS IoT Core も保持するであろうトピックwill
により明確になった Will メッセージに接続発行する権限をすべてのクライアントに付与します。
- JSON
-
-
{
"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"
]
}
]
}
保持されたメッセージを一覧表示して取得するためのポリシー
サービスとアプリケーションは、MQTT クライアントをサポートしなくても、ListRetainedMessages
およびGetRetainedMessage
を呼び出す事によって保持されたメッセージにアクセスする事ができます。これらのアクションを呼び出すサービスとアプリケーションは、次の例のようなポリシーを使用して認証される必要があります。
- JSON
-
-
{
"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"
]
}
]
}