在 AWS 雲端中管理串流 - AWS IoT Core

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

在 AWS 雲端中管理串流

AWS IoT 提供 AWS SDK 和 AWS CLI 命令,可讓您用來管理 AWS 雲端中的串流。您可使用這些命令來執行下列:

  • 建立串流 CLI / SDK

  • 說明串流以取得其資訊。CLI / SDK

  • 列出 中的串流 AWS 帳戶。CLI / SDK

  • 更新串流中的檔案清單或串流說明。CLI / SDK

  • 刪除串流。CLI / SDK

注意

目前,串流不會顯示於 AWS Management Console之中。您必須使用 AWS CLI 或 AWS SDK 來管理 中的串流 AWS IoT。此外,嵌入式 C SDK 是唯一支援 MQTT 型檔案傳輸的 SDK。

從裝置使用 AWS IoT MQTT 型檔案交付之前,您必須確保裝置符合下列條件,如下節所示:

  • 反映透過 MQTT 傳輸資料所需正確許可的政策。

  • 您的裝置可以連線至 AWS IoT Device Gateway。

  • 政策陳述式,指出您可以標記資源。如果CreateStream使用標籤呼叫 ,則需要 iot:TagResource

在您從裝置使用 AWS IoT MQTT 型檔案交付之前,必須遵循下一節中的步驟,以確保您的裝置獲得適當授權,並可連線至 AWS IoT 裝置閘道。

授與您的裝置許可

您可遵循建立 AWS IoT 政策中的步驟,來建立裝置政策或使用現有的裝置政策。將政策連接至與您裝置相關聯的憑證,並將下列許可新增至裝置政策。

JSON
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iot:Connect" ], "Resource": [ "arn:aws:iot:us-east-1:123456789012:client/${iot:Connection.Thing.ThingName}" ] }, { "Effect": "Allow", "Action": [ "iot:Receive", "iot:Publish" ], "Resource": [ "arn:aws:iot:us-east-1:123456789012:topic/$aws/things/${iot:Connection.Thing.ThingName}/streams/*" ] }, { "Effect": "Allow", "Action": "iot:Subscribe", "Resource": [ "arn:aws:iot:us-east-1:123456789012:topicfilter/$aws/things/${iot:Connection.Thing.ThingName}/streams/*" ] } ] }

將您的裝置連線至 AWS IoT

使用 AWS IoT MQTT 型檔案交付的裝置需要連線 AWS IoT。 AWS IoT MQTT 型檔案交付會在 AWS 雲端 AWS IoT 中與 整合,因此您的裝置應該直接連線至AWS IoT 資料平面的端點

注意

AWS IoT 資料平面的端點專屬於 AWS 帳戶 和 區域。您必須將 端點用於裝置註冊所在的 AWS 帳戶 和 區域 AWS IoT。

如需詳細資訊,請參閱連線至 AWS IoT Core

TagResource 用量

CreateStream API 動作會建立串流,以透過 MQTT 以區塊形式交付一或多個大型檔案。

成功的 CreateStream API 呼叫需要下列許可:

  • iot:CreateStream

  • iot:TagResource (如果 CreateStream 具有標籤)

支援這兩個許可的政策如下所示:

JSON
{ "Version": "2012-10-17", "Statement": { "Action": [ "iot:CreateStream", "iot:TagResource" ], "Effect": "Allow", "Resource": "arn:aws:iot:us-east-1:123456789012:stream/streamId" } }

需要iot:TagResource政策陳述式動作,以確保使用者無法在沒有適當許可的情況下在資源上建立或更新標籤。如果沒有 的規格政策陳述式動作iot:TagResourceAccessDeniedException如果請求隨附標籤,CreateStreamAPI 呼叫將傳回 。

如需詳細資訊,請參閱下列連結: