如何解决Raspberry Pi中的Mosquitto代理设置桥与IoT中心SAS令牌
因为IoT中心不是代理,所以我想使用Raspberry Pi作为可以与设备进行通信的代理,并且Raspberry Pi将收到的消息发送到IoT中心。 在Raspberry上安装Mosquitto之后,这是我的配置mosquitto文件:
connection iothub-bridge
log_type all
address your hub.azure-devices.net:8883
remote_username your hub.azure-devices.net/your device
remote_password sas token
remote_clientid your device
bridge_cafile /home/pi/baltimore.pem
try_private false
cleansession true
start_type automatic
bridge_insecure false
bridge_protocol_version mqttv311
bridge_tls_version tlsv1.2
notifications false
notification_topic events/
topic devices/Your device/messages/events/
问题是SAS令牌已使用了几个小时,并且将过期,我希望有一个替代SAS令牌的解决方案,并且可以永久使用。
解决方法
很高兴您喜欢我的博客文章:-)。
正如Matthijs所说,在SAS令牌生成中,设备浏览器或类似资源的最长期限为365天,但是使用Azure IoT CLI,您可以走得更长。例如,此命令创建一个10年(315,360,000秒)的
az iot集线器generate-sas-token -n [您的iot集线器] -d [您的设备ID] --du 315360000
正如Matthijs所说,您不能生成永不过期的。我尝试生成一个100年(3,153,600,000秒),它似乎奏效了
我要警告的是,我实际上并没有尝试将上述设备连接到IoT中心。
话虽如此,拥有SAS令牌这么长时间不是一个好的安全实践,但是只要您清楚所涉及的风险,我认为这在技术上是可行的。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。