本文介绍了如何创建和管理 IoT 中心。
根据你使用的工具,准备以下先决条件。
在开发计算机上安装的 Azure CLI。 如果没有 Azure CLI,请按照安装 Azure CLI 的步骤进行操作。
Azure 订阅中的资源组。 如果要创建新的资源组,请使用 az group create 命令:
az group create --name <RESOURCE_GROUP_NAME> --location <REGION>
在开发计算机上安装的 Azure PowerShell。 如果没有 Azure PowerShell,请按照以下步骤安装 Azure PowerShell 。
Azure 订阅中的资源组。 如果要创建新的资源组,请使用 New-AzResourceGroup 命令:
New-AzResourceGroup -Name <RESOURCE_GROUP_NAME> -Location "<REGION>"
此部分介绍如何使用 Azure 门户 创建 IoT 中心。
登录 Azure 门户 。
在 Azure 主页上,选择“+ 创建资源”按钮。
在“类别”菜单中选择“物联网”,然后选择“IoT 中心”。
在“基本信息”选项卡上,按如下所示填写字段:
重要
由于 IoT 中心将作为 DNS 终结点公开可发现,因此请务必避免在命名它时输入任何敏感信息或个人身份信息。
展开表
属性
值
订阅
选择要用于中心的订阅。
资源组
选择一个资源组或新建一个资源组。 若要新建资源组,请选择“新建”并填写要使用的名称。
IoT 中心名称
输入中心的名称。 此名称必须全局唯一,长度介于 3 到 50 个字母数字字符之间。 名称还可以包含短破折号 ('-'
) 字符。
区域
选择离你最近的地区,也就是你希望中心所在的位置。 某些功能(如 IoT 中心设备流 )仅适用于特定区域。 对于这些受限功能,你必须选择受支持的区域之一。
层
选择要用于中心的层。 根据你需要多少功能以及每天通过解决方案发送多少消息来选择层。 免费层适用于测试和评估。 如果是免费层,则可将 500 台设备连接到中心,每天最多可传输 8,000 条消息。 每个 Azure 订阅可以在免费层中创建一个 IoT 中心。 若要比较每个层可使用的功能,请选择“比较层”。 有关详细信息,请参阅选择适用于解决方案的 IoT 中心层 。
每日消息数量限制
为中心选择消息的每日最大配额。 可用选项取决于为中心选择的层。 若要查看可用的消息传送和定价选项,请选择“查看所有选项”,然后选择最符合中心需求的选项。 有关详细信息,请参阅 IoT 中心配额和限制 。
在完成时选择“下一步:网络”,继续创建中心。
在“网络”选项卡上填写字段,如下所示:
展开表
属性
值
连接配置
选择设备可以用来连接到 IoT 中心的终结点。 接受此示例的默认设置“公共访问”。 可以在创建 IoT 中心后更改此设置。 有关详细信息,请参阅管理 IoT 中心的公用网络访问 。
最低 TLS 版本
选择 IoT 中心支持的最低 TLS 版本 。 创建 IoT 中心后,无法更改此值。 接受此示例的默认设置 (1.0)。
在完成时选择“下一步:管理”,继续创建中心。
在“管理”选项卡上,接受默认设置。 如果需要,可以修改以下任何字段:
展开表
属性
值
权限模型
作为基于角色的访问控制的一部分,此属性决定如何管理对 IoT 中心的访问。 允许共享访问策略或仅选择基于角色的访问控制。 有关详细信息,请参阅使用 Azure Microsoft Entra ID 控制对 IoT 中心的访问 。
分配给我
你可能需要访问 IoT 中心数据 API 以管理实例中的元素。 如果你有权访问角色分配,请选择“IoT 中心数据参与者角色”,以授予自己对数据 API 的完全访问权限。 若要分配 Azure 角色,必须拥有 Microsoft.Authorization/roleAssignments/write
权限,例如用户访问管理员 或所有者 。
设备到云的分区
此属性将设备到云消息与这些消息的同步读取器数目相关联。 大多数 IoT 中心只需要 4 个分区。
选择“下一步: 加载项”,转到下一屏幕。
在“加载项”选项卡上,接受默认设置。 如果需要,可以修改以下任何字段:
展开表
在完成时选择“下一步:标记”继续到下一屏幕。
标记是名称/值对。 可以为多个资源和资源组分配相同的标记,以便对资源进行分类并合并计费。 在本文档中,不会添加任何标记。 有关详细信息,请参阅使用标记来组织 Azure 资源 。
在完成时选择“下一步:查看+创建”可查看选择。
选择“创建”,以启动新中心的部署。 创建中心时,部署将持续几分钟。 部署完成后,选择“转到资源”以打开新的中心。
使用 az iot hub create 命令,使用 IoT 中心的全局唯一名称在资源组中创建 IoT 中心。 例如:
az iot hub create --name <NEW_NAME_FOR_YOUR_IOT_HUB> --resource-group <RESOURCE_GROUP_NAME> --sku S1
重要
由于 IoT 中心将作为 DNS 终结点公开可发现,因此请务必避免在命名它时输入任何敏感信息或个人身份信息。
上一个命令会在 S1 定价层中创建 IoT 中心。 有关详细信息,请参阅 Azure IoT 中心定价 。
使用 New-AzIotHub 命令在资源组中创建 IoT 中心。 IoT 中心的名称必须是全局唯一的。 例如:
New-AzIotHub `
-ResourceGroupName <RESOURCE_GROUP_NAME> `
-Name <NEW_NAME_FOR_YOUR_IOT_HUB> `
-SkuName S1 -Units 1 `
-Location "<REGION>"
重要
由于 IoT 中心将作为 DNS 终结点公开可发现,因此请务必避免在命名它时输入任何敏感信息或个人身份信息。
上一个命令会在 S1 定价层中创建 IoT 中心。 有关详细信息,请参阅 Azure IoT 中心定价 。
向使用 IoT 中心功能的应用程序和服务提供访问权限。
连接字符串授予设备和服务基于共享访问策略连接到 IoT 中心的权限的令牌。 连接字符串是开始使用 IoT 中心的一种简单方法,它在许多示例和教程中使用,但不建议将其用于生产方案。
对于大多数示例方案,服务策略已足够。 服务策略授予服务连接访问服务终结点的权限。 有关其他内置共享访问策略的详细信息,请参阅 IoT 中心权限 。
若要获取 service策略的 IoT 中心连接字符串,请执行以下步骤:
在 Azure 门户 中,选择“资源组”。 选择中心所在的资源组,然后从资源列表中选择中心。
在 IoT 中心的左侧窗格上,选择“共享访问策略”。
在策略列表中,选择“service”策略。
复制“主连接字符串”并保存该值。
使用 az iot hub connection-string show 命令获取授予服务策略权限的 IoT 中心的连接字符串:
az iot hub connection-string show --hub-name <YOUR_IOT_HUB_NAME> --policy-name service
该服务连接字符串应类似于以下示例:
"HostName=<IOT_HUB_NAME>.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey=<SHARED_ACCESS_KEY>"
使用 Get-AzIotHubConnectionString 命令获取授予服务策略权限的 IoT 中心的连接字符串。
Get-AzIotHubConnectionString -ResourceGroupName "<YOUR_RESOURCE_GROUP>" -Name "<YOUR_IOT_HUB_NAME>" -KeyName "service"
该服务连接字符串应类似于以下示例:
"HostName=<IOT_HUB_NAME>.azure-devices.net;SharedAccessKeyName=service;SharedAccessKey=<SHARED_ACCESS_KEY>"
与使用安全令牌相比,使用 Microsoft Entra ID 对访问进行身份验证并使用 Azure 基于角色的访问控制 (RBAC) 控制权限能够提供更高的安全性与易用性。 为了最大限度地减少安全令牌中固有的潜在安全问题,我们建议尽可能地强制执行 Microsoft Entra 身份验证。 有关详细信息,请参阅使用 Azure Microsoft Entra ID 控制对 IoT 中心的访问 。
删除 IoT 中心时,会丢失关联的设备标识注册表。 如果要移动或升级 IoT 中心,或删除 IoT 中心但保留设备,请考虑使用 Azure CLI 迁移 IoT 中心 。
若要删除 IoT 中心,请在Azure 门户中打开 IoT 中心,然后选择“删除”。
若要删除 IoT 中心,请运行 az iot hub delete 命令:
az iot hub delete --name <IOT_HUB_NAME> --resource-group <RESOURCE_GROUP_NAME>
若要删除 IoT 中心,请使用 Remove-AzIotHub 命令。
Remove-AzIotHub `
-ResourceGroupName MyIoTRG1 `
-Name MyTestIoTHub
除了 Azure 门户和 CLI,以下工具还可用于帮助你以任何支持你的方案的方式使用 IoT 中心: