AWS IoT
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

事物策略变量

事物策略变量允许您根据事物名称、事物类型和事物属性值等事物属性来编写授予或拒绝权限的 AWS IoT 策略。事物名称从事物连接至 AWS IoT 时发送的 MQTT Connect 消息中的客户端 ID 获取。当事物通过使用 TLS 双向身份验证的 MQTT 连接至 AWS IoT 时,或通过使用经过身份验证的 Amazon Cognito 身份的 WebSocket 协议 MQTT 连接至 AWS IoT 时,事物策略变量将被替换。当证书或经过身份验证的 Amazon Cognito 身份附加到事物时,事物策略变量也将被替换。可以使用 AttachThingPrincipal API 将证书和经过身份验证的 Amazon Cognito 身份附加到事物。

可用的事物策略变量如下:

  • iot:Connection.Thing.ThingName

  • iot:Connection.Thing.ThingTypeName

  • iot:Connection.Thing.Attributes[attributeName]

  • iot:Connection.Thing.IsAttached

iot:Connection.Thing.ThingName

该属性等于为其评估策略的事物名称。事物名称设置为 MQTT/WebSocket 连接的客户端 ID。此策略变量仅在通过 MQTT 或基于 WebSocket 协议的 MQTT 连接时可用。

iot:Connection.Thing.ThingTypeName

该属性等于与为其评估策略的事物相关联的事物类型。事物名称设置为 MQTT/WebSocket 连接的客户端 ID。事物类型名称通过调用 DescribeThing API 获得。此策略变量仅在通过 MQTT 或基于 WebSocket 协议的 MQTT 连接时可用。

iot:Connection.Thing.Attributes[attributeName]

该属性等于与为其评估策略的事物相关联的指定属性的值。事物最多可以具有 50 个属性。每个属性都作为策略变量提供:iot:Connection.Thing.Attributes[attributeName],其中 attributeName 是属性的名称。事物名称设置为 MQTT/WebSocket 连接的客户端 ID。此策略变量仅在通过 MQTT 或基于 WebSocket 协议的 MQTT 连接时可用。

iot:Connection.Thing.IsAttached

如果正在为其评估策略的事物附加了证书或 Amazon Cognito 身份,这将解析为 true