物联网中的物品名称是如何工作的?

0

【以下的问题经过翻译处理】 在IoT服务中,我对于一个“物品”(Thing)的“名称”真正含义感到有些困惑。

我创建了一个名为“thing1”的物品,并同时为其创建了一个证书。该证书仅分配给thing1。

我使用证书设置了一个客户端,它成功连接到IoT服务,并以“thing1”的身份发送了影子更新。然后我尝试让该设备以“thing2”或“thing3”的身份发送影子更新,出乎意料的是,这也奏效了,尽管我的账户中并没有定义“thing2”或“thing3”。

我原本计划为每个设备提供独立证书,并假设通过使用单独的证书,设备将无法冒充其他设备。但实际似乎并非如此。

那么,实现我想要的安全性的推荐方式是什么呢?

profile picture
EXPERTE
gefragt vor 5 Monaten8 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 您好,Frank。如果设备具有已在IoT Core注册的证书,则即使没有注册相应的物品,它也可能能够进行连接。这是因为它可以进行身份验证,但不一定意味着它将被授权执行任何操作。这取决于您对AWS IoT策略的设置。

一般而言,每个设备应该有自己的证书和私钥。如果设备已经被安全地配置,并且私钥在设备上得到安全存放,则只有该设备才能使用该证书进行身份验证。 最佳实践:

https://docs.aws.amazon.com/wellarchitected/latest/iot-lens/identity-and-access-management-iam.html

确保每个设备在AWS IoT中都有自己的唯一X.509证书,并且设备不应共享证书(原则上一个设备对应一个证书)。除每个设备使用单独证书外,在使用AWS IoT时,每个设备在IoT注册表中必须有自己的唯一物品名(Thing),并且物品名称用作MQTT连接的MQTT ClientID的基础。

您可以将AWS IoT策略附加到每个证书上。然后,您可以使用AWS IoT 策略变量 限制使用该证书连接的设备。参考https://docs.aws.amazon.com/zh_cn/iot/latest/developerguide/connect-and-pub.html中的示例。

要成功连接,必须在AWS IoT Core注册表中注册物品名称,并使用关联到该物品的身份或主体进行身份验证。

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

更多信息请参考: https://docs.aws.amazon.com/zh_cn/iot/latest/developerguide/iot-authorization.html https://docs.aws.amazon.com/zh_cn/iot/latest/developerguide/iot-policy-variables.html https://docs.aws.amazon.com/zh_cn/iot/latest/developerguide/example-iot-policies.html https://aws.amazon.com/blogs/iot/understanding-the-aws-iot-security-model/

另外,您可能对使用AWS IoT Device Defender感兴趣。它可以对您的设备进行审计,帮助您检测任何受感染的设备。

profile picture
EXPERTE
beantwortet vor 5 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen