【问题标题】:IoT Hub Device Explorer SAS maximum TTLIoT 中心设备资源管理器 SAS 最大 TTL
【发布时间】:2017-12-13 01:07:26
【问题描述】:

IoT HubDevice Explorer 中生成 SAS 令牌时,可以设置的最大 TTL 是多少?

我不希望它在最好的情况下过期。

插入 0 没有帮助,当连接丢失时,它永远不会重新连接。

【问题讨论】:

    标签: azure-iot-hub


    【解决方案1】:

    看看GitHub中的Device Explorer实现:

     decimal ttlValue = numericUpDown1.Value;
     var sasBuilder = new SharedAccessSignatureBuilder()
     {
          Key = this.selectedDeviceKey,
          Target = String.Format("{0}/devices/{1}", iotHubHostName, WebUtility.UrlEncode(this.selectedDeviceId)),
          TimeToLive = TimeSpan.FromDays(Convert.ToDouble(ttlValue))
     };
     sasRichTextBox.Text = deviceConnectionStringWithSAS(sasBuilder.ToSignature()) + "\r\n";
    

    【讨论】:

      【解决方案2】:

      原则上,拥有一个永不过期的公共令牌不是一个好主意:如果一个实体捕获并设法解密了消息,它可以在到达云的途中使用该令牌来模拟设备,而您不会知道它不是设备...这就是为什么一个好的做法是定期更新 SAS 令牌的原因。我们的开源设备 SDK 基于永不传输的私钥实现 SAS 令牌的生成和更新。为什么不实现这个而不是硬编码一个永不过期的令牌?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-08-22
        • 2019-05-06
        • 1970-01-01
        • 2021-02-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多