AICon 上海站|日程100%上线,解锁Al未来! 了解详情
写点什么

微软 Azure IoT Hub 设备配置服务正式发布

  • 2017-12-27
  • 本文字数:1148 字

    阅读完需:约 4 分钟

近日,微软正式发布了Azure IoT Hub 设备配置服务。该服务之前已经面向客户公开预览了数月,此次发布增加了新的功能及更多的语言支持。

该服务是Microsoft Azure IoT 架构的一部分。微软声称,他们设计这项服务的目的是为了在实际应用中为大量IoT 设备的配置提供零接触的解决方面,而不需要人为干预。

Nicole Berdy 是 IoT Hub 的一名高级项目经理,他在公告中指出:

我们在设计“设备配置过程(Device Provisioning Process)”时,充分考虑了供应链面临的挑战,为以一种安全、可伸缩的方式配置数以百万计的设备提供了所需的基础设施。

典型的 IoT 设备配置过程可能包括在生产的时候向设备增加一个连接串,当设备部署完成后立即就可以开始发送消息。然而,这会导致安全和伸缩性方面的问题,因为每个设备在部署之前就必须有一个独一无二的连接串。

在 Azure IoT Hub 设备配置服务(DPS)中,过程就不一样了。

图片来源: https://azure.microsoft.com/en-au/blog/azure-iot-hub-device-provisioning-service-is-generally-available/

首先,制造商向 Azure 门户上的 DPS 实例中添加设备注册信息。至此,当设备在工厂中生产并准备好后,它就配置好了 DPS 服务的端点。

一旦设备激活,以下过程就会自动发生,无需人工干预:

  1. 设备和服务通信,发送设备标识信息证明其身份;
  2. 一旦注册标识和密钥验证通过,服务就会把设备注册到 IoT Hub,并创建期望的设备孪生状态,其中包含设备最初的配置信息;
  3. IoT Hub 向 DPS 返回设备 ID;
  4. DPS 向设备返回 IoT Hub 的连接信息;
  5. 设备直接和 IoT Hub 通信,从 IoT Hub 获取期望的状态配置。

此时,设备可以正常通信了。DPS 支持的协议和 Azure IoT Hub 一样,包括 HTTP、AMQP、 MQTT、AMQP over web sockets 和 MQTT over web sockets 等。

设备端和服务端操作的开发支持都是通过 SKD 提供的,可用的 SDK 有 C、C#、Java、Node、Python 等语言的。GitHub 上提供了这些 SDK 的下载,并且提供了快速入门教程,帮助用户开始使用这项服务。

IoT 解决方案的一个重要部分是保证设备及通信的安全。为此,DPS 当前支持两种设备标识机制:

  1. X.509 证书,用于交换设备生产时创建并安装到设备上的证书;
  2. 从安装好的 TPM 设备上提取可信平台模块(TPM)“签注密钥(endorsement key)”的公共部分。TPM 是一个专用的微处理器,用于保障硬件安全,是一项国际标准。

Azure IoT Hub 设备配置服务可以连接到 Azure IoT Hub 的许多实例,使该服务可以向位于不同区域的许多 IoT Hub 分配设备,支持设备地理复制或负载均衡及跨不同的 Azure 订阅,支持多客户或环境。

自 2018 年 2 月 1 日起,该服务的收费标准为每 1000 次操作 0.10 美元,微软Azure 文档站点提供了完整的文档。

查看英文原文 Microsoft Azure IoT Hub Device Provisioning Service Hits General Availability

2017-12-27 18:001397
用户头像

发布了 1008 篇内容, 共 412.2 次阅读, 收获喜欢 346 次。

关注

评论

发布
暂无评论
发现更多内容

未来10年,5个C/C++吃香的细分领域技术

奔着腾讯去

云原生 网络安全 音视频 DPDK 虚拟化技术

LeetCode刷题278-简单-第一个错误版本

ベ布小禅

9月日更

Go 专栏|基础数据类型:整数、浮点数、复数、布尔值和字符串

AlwaysBeta

Go 语言

Go 专栏|函数那些事

AlwaysBeta

Go 语言

🐦【Mybatis开发指南】如何清晰的解决出现「多对一模型」和「一对多模型」的问题

码界西柚

Java mybatis mybatis配置 9月日更

ShardingSphere 语句解析生成初探

源码 ShardingSphere

Go 专栏|复合数据类型:字典 map 和 结构体 struct

AlwaysBeta

Go 语言

北鲲云超算平台如何帮助现代生物制药发展?

北鲲云

Go 专栏|流程控制,一网打尽

AlwaysBeta

Go 语言

Go 专栏|接口 interface

AlwaysBeta

Go 语言

在线JSON转JAVA工具

入门小站

工具

财经大课:如何看待规模化与差异化竞争

石云升

财经思维 9月日更

以两军问题为背景来演绎BasicPaxos

OpenIM

【HTML5游戏】从敲打空格键开始

devpoint

HTML5游戏 9月日更

Java + opencv 实现图片修复(图片去水印)

张音乐

Java OpenCV 音视频 9月日更 图片去水印

Linux内核四大核心框架

hanaper

Go 专栏|错误处理:defer,panic 和 recover

AlwaysBeta

Go 语言

(深入篇)漫游语音识别技术—带你走进语音识别技术的世界

声网

深度学习 音视频 语音识别

【报名】飞桨中国行丨企业零门槛AI创新应用-智能制造专场

百度大脑

人工智能

Linux之lastlog命令

入门小站

Linux

链路压测中各接口性能统计

FunTester

性能测试 测试框架 测试开发 FunTester 链路测试

Go 专栏|复合数据类型:数组和切片 slice

AlwaysBeta

Go 语言

Go 专栏|说说方法

AlwaysBeta

Go 语言

MySQL 获取表的信息

玄兴梦影

MySQL 数据库表 查询语句

网络攻防学习笔记 Day124

穿过生命散发芬芳

9月日更 互联网安全

线程同步类CyclicBarrier在性能测试集合点应用

FunTester

多线程 性能测试 线程安全 测试框架 FunTester

HTTP系列之:HTTP中的cookies

程序那些事

Java 网络协议 HTTP cookies

重磅!博睿数据通过CMMI5级评估,国内APM领域首家

博睿数据

数据结构和算法在流程画布中的实际应用

GrowingIO技术专栏

数据结构 G6 图可视化引擎 流程画布

看云起云动 览开源盛世 | 亚马逊云科技中国峰会Dev Day线上来袭!

亚马逊云科技 (Amazon Web Services)

Go 专栏|变量和常量的声明与赋值

AlwaysBeta

Go 语言

微软Azure IoT Hub设备配置服务正式发布_微软_Martin Abbott_InfoQ精选文章