AWS IoT
开发人员指南
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。请点击 Amazon AWS 入门,可查看中国地区的具体差异

事物策略示例

以下策略允许设备在包含事物类型名称和事物名称的特定主题上发布:

{ "Version":"2012-10-17", "Statement":[{ "Effect":"Allow", "Action":["iot:Publish"], "Resource":[ "arn:aws:iot:us-east-1:123456789012:topic/${iot:Connection.Thing.ThingTypeName}/${iot:Connection.Thing.ThingName}" ] }] }

如果用于向 AWS IoT 进行身份验证的证书被附加到正在为其评估策略的事物上,则以下策略允许设备连接。

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": ["iot:Connect"], "Resource": ["*"], "Condition":{ "Bool":{ "iot:Connection.Thing.IsAttached":["true"] } } }] }

以下策略允许设备在一组主题上发布 (“/foo/bar”和“/foo/baz”),前提是:

  • 与设备关联的事物包含值为“foo”、“bar”或“baz”的“Manufacturer”属性。

  • 与设备关联的事物位于 Thing Registry 中,并附加到用于连接 AWS IoT 的证书。

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": ["iot:Publish"], "Resource": [ "arn:aws:iot:us-east-1:123456789012:topic/foo/bar", "arn:aws:iot:us-east-1:123456789012:topic/foo/baz" ], "Condition": { "ForAnyValue:StringLike": { "iot:Connection.Thing.Attributes[Manufacturer]": [ "foo", "bar", "baz" ] } } }] }

以下策略允许设备发布主题,前提是:

  • 主题由事物类型名称、“/”和事物名称组成。

  • 事物位于 Thing Registry 中。

  • 事物附加到用于连接 AWS IoT 的证书。

{ "Version":"2012-10-17", "Statement":[{ "Effect":"Allow", "Action":["iot:Publish"], "Resource":[ "arn:aws:iot:us-east-1:123456789012:topic/${iot:Connection.Thing.ThingTypeName}/${iot:Connection.Thing.ThingName}" ] }] }

如果事物位于 Thing Registry 中,则以下策略允许设备仅在其自己的事物影子主题上发布。

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": ["iot:Publish"], "Resource": [ "arn:aws:iot:us-east-1:123456789012:topic/$aws/things/${iot:Connection.Thing.ThingName}/shadow/update" ] }] }