本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
物件政策變數
物件政策變數可讓您撰寫 AWS IoT Core 政策,根據物件名稱、物件類型和物件屬性值等物件屬性來授予或拒絕許可。您可以使用物件政策變數來套用相同的政策來控制許多 AWS IoT Core 裝置。如需裝置佈建的詳細資訊,請參閱裝置佈建。當物件連線至 時,會從傳送MQTTConnect
的訊息中的用戶端 ID 取得物件名稱 AWS IoT Core。
使用 AWS IoT Core 政策中的物件政策變數時,請注意下列事項。
-
使用 AttachThingPrincipalAPI將憑證或主體 (已驗證的 Amazon Cognito 身分) 連接至物件。
-
當您使用物件政策變數取代物件名稱時,MQTT連線訊息或TLS連線
clientId
中的 值必須完全符合物件名稱。
現已提供下列物件政策變數:
-
iot:Connection.Thing.ThingName
這會解析為正在評估政策之 AWS IoT Core 登錄檔中物件的名稱。 AWS IoT Core 會使用裝置在驗證時提供的憑證來決定要使用哪些物件來驗證連線。此政策變數僅在裝置透過MQTT通訊協定或透過MQTT WebSocket 通訊協定連線時可用。
-
iot:Connection.Thing.ThingTypeName
當政策受到評估時,這可以解析為所屬物件相關的物件類型。MQTT/WebSocket 連線的用戶端 ID 必須與物件名稱相同。此政策變數只有在透過 MQTT通訊協定或透過 WebSocket MQTT通訊協定連線時才能使用。
-
iot:Connection.Thing.Attributes[
attributeName
]當政策受到評估時,這可以解析為所屬物件相關的特定屬性值。單一物件至多可具備 50 個屬性。每個屬性都可以作為政策變數使用:
iot:Connection.Thing.Attributes[
其中attributeName
]attributeName
是 屬性的名稱。MQTT/WebSocket connection 的用戶端 ID 必須與物件名稱相同。此政策變數只有在透過 MQTT通訊協定或透過 MQTT WebSocket 通訊協定連線時才能使用。 -
iot:Connection.Thing.IsAttached
iot:Connection.Thing.IsAttached: ["true"]
強制執行只有在 中註冊 AWS IoT 並連接到主體的裝置才能存取政策內的許可。如果裝置呈現的憑證未連接到登錄檔中的 AWS IoT Core IoT 物件,您可以使用此變數來防止 AWS IoT Core 連線至 。此變數具有 值,true
或false
指示連線物件使用 連接到登錄檔中的憑證或 Amazon Cognito AttachThingPrincipal 身分API。物件名稱作為用戶端 ID。