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

事物策略变量

事物策略变量允许您根据事物名称、事物类型和事物属性值等事物属性来编写授予或拒绝权限的 AWS IoT 策略。事物名称从事物连接至 Connect 时发送的 MQTT AWS IoT 消息中的客户端 ID 获取。当事物通过使用 TLS 双向身份验证的 MQTT 或通过基于 WebSocket 的 MQTT 协议(使用经过身份验证的 AWS IoT 身份)连接至 Amazon Cognito 时,事物策略变量将被替换。当证书或经过身份验证的 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

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