本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
物件政策變數
物件原則變數可讓您撰寫 AWS IoT Core 根據物件內容 (例如物件名稱、物類型及物屬性值) 來授與或拒絕權限的原則。您可以使用物件原則變數來套用相同的原則來控制許多 AWS IoT Core 裝置。如需裝置佈建的詳細資訊,請參閱裝置佈建。物件名稱是從物件連線時傳送之MQTTConnect
訊息中的用戶端 ID 取得 AWS IoT Core.
在中使用物策略變數時,請記住下列事項 AWS IoT Core 政策。
-
使用AttachThingPrincipalAPI將憑證或主體 (經過驗證的 Amazon Cognito 身分) 附加至物件。
-
當您以物件原則變數取代物件名稱時,連線訊息或TLS連線
clientId
中的值必須完全符合物名稱。MQTT
現已提供下列物件政策變數:
-
iot:Connection.Thing.ThingName
這會解析為物件的名稱 AWS IoT Core 正在評估原則的登錄。 AWS IoT Core 使用裝置驗證時所顯示的憑證,以判斷要使用哪個物件來驗證連線。只有當裝置透過通訊協定MQTT或MQTT透過 WebSocket 通訊協定連線時,才能使用此原則變數。
-
iot:Connection.Thing.ThingTypeName
當政策受到評估時,這可以解析為所屬物件相關的物件類型。MQTT/WebSocket連線的用戶端識別碼必須與物件名稱相同。只有透過通訊協定MQTT或MQTT透過 WebSocket通訊協定連線時,才能使用此原則變數。
-
iot:Connection.Thing.Attributes[
attributeName
]當政策受到評估時,這可以解析為所屬物件相關的特定屬性值。單一物件至多可具備 50 個屬性。每個屬性都可以作為策略變數使用:
iot:Connection.Thing.Attributes[
其中attributeName
]attributeName
是屬性的名稱。MQTT/WebSocket 連線的用戶端識別碼必須與物件名稱相同。只有透過通訊協定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 身分,使用。AttachThingPrincipalAPI物件名稱作為用戶端 ID。