You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Postman向Azure IoT Hub发送POST请求持续返回Unauthorized

Azure IoT Hub Postman POST请求返回Unauthorized问题排查

针对你遇到的Postman向IoT Hub发送请求返回Unauthorized的问题,可按以下几点逐一排查:

  • 修正SAS Token的Resource URI
    设备向IoT Hub发送消息时,SAS Token的resourceUri应设置为IoT Hub的主机名(如myhub.azure-devices.net),而非带设备路径的myhub.azure-devices.net/devices/TestDevice1。Event Hub的Resource URI规则与IoT Hub不同,之前适配Event Hub的代码需调整该参数。

  • 匹配密钥与keyName的对应关系

    • 使用设备密钥时:keyName必须是设备ID(即TestDevice1),密钥取设备详情中的“主密钥”或“次密钥”。
    • 使用共享访问策略密钥时:比如用iothubowner策略,keyName是策略名称(iothubowner),密钥取该策略的主/次密钥,同时要确保策略包含**发送(Send)**权限。
  • 确认SAS Token的权限包含发送权限
    生成Token时,权限参数需指定s(对应IoT Hub的发送权限)。若之前Event Hub的代码用的是send,需替换为s。

  • 检查Postman请求头格式
    将生成的SAS Token放入Authorization请求头,格式必须为:

    SharedAccessSignature sr=myhub.azure-devices.net&sig=xxx&se=xxx&skn=xxx
    

    注意不要遗漏前缀SharedAccessSignature (末尾带有空格)。

  • 验证SAS Token的正确性
    用Azure IoT Explorer生成对应设备的SAS Token,与自己代码生成的Token对比,重点检查:

    • 过期时间(se参数)是否未过期
    • 签名部分(sig)是否一致
    • 资源(sr)是否为IoT Hub主机名

内容的提问来源于stack exchange,提问作者Pile

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.21 14:12:09