你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

边缘上的机密计算

适用于:IoT Edge 1.5 复选标记IoT Edge 1.5

重要

IoT Edge 1.5 LTS 是受支持的版本。 IoT Edge 1.4 LTS 的生命周期结束日期为 2024 年 11 月 12 日。 如果你使用的是较低的版本,请参阅更新 IoT Edge

Azure IoT Edge 支持在设备上的安全 enclave 中运行的机密应用程序。 加密会为传输中的数据或静态数据提供安全性,但 enclave 会为正在使用的数据和工作负载提供安全性。 IoT Edge 支持将 Open Enclave 作为开发机密应用程序的标准。

安全性是物联网(IoT)的重要焦点,因为 IoT 设备通常在世界各地,而不是在专用设施内进行保护。 这样的暴露会使设备面临篡改和伪造的风险,因为它们在物理上可由行为不端的人访问。 IoT Edge 设备需要更多的信任和完整性,因为它们在边缘运行敏感的工作负荷。 与常见的传感器和执行器不同,这些智能边缘设备可能会公开以前仅在受保护的云或本地环境中运行的敏感工作负载。

IoT Edge 安全管理器解决了一部分的机密计算难题。 安全管理器使用硬件安全模块 (HSM) 来保护 IoT Edge 设备的标识工作负载和正在进行的进程。

机密计算的另一个方面是保护边缘使用的数据。 受信任的执行环境(TEE)是处理器上的安全隔离环境,有时称为 enclave。 机密应用程序是在 enclave 中运行的应用程序。 由于 enclave 的性质,机密应用程序会受到保护,免遭主处理器或 TEE 中运行的其他应用的侵害。

IoT Edge 上的机密应用程序

机密应用程序在传输和静态期间进行加密,并且仅解密以在受信任的执行环境中运行。 此标准适用于作为 IoT Edge 模块部署的机密应用程序。

开发人员创建机密应用程序并将其打包为 IoT Edge 模块。 应用程序在推送到容器注册表之前进行加密。 在 IoT Edge 设备上启动该模块之前,应用程序将在整个 IoT Edge 部署过程中保持“已加密”状态。 机密应用程序一旦位于设备的 TEE 内就会进行解密,并且可以开始执行。

此图显示机密应用程序在 IoT Edge 模块内部被加密,直到部署到安全隔离区中。

IoT Edge 上的机密应用程序扩展 Azure 机密计算。 也可将云中的安全 enclave 内运行的工作负载部署为在边缘的安全 enclave 内运行。

开放式 Enclave

Open Enclave SDK 是一个开源项目,可让开发人员为多个平台和环境创建机密应用程序。 Open Enclave SDK 在设备的受信任执行环境(TEE)中运行,而 Open Enclave API 充当 TEE 与非 TEE 处理环境之间的接口。

Open Enclave 支持多个硬件平台。 IoT Edge 对 enclave 的支持需要 Open Portable TEE 操作系统 (OP-TEE OS)。 若要了解详细信息,请参阅用于 OP-TEE OS 的Open Enclave SDK

Open Enclave 存储库包含帮助开发人员入门的示例。 有关详细信息,请选择其中一篇介绍性文章:

硬件

目前,对于将机密应用程序部署为 IoT Edge 模块,Scalys 提供的 TrustBox 是制造商服务协议支持的唯一设备。 TrustBox 基于 TrustBox Edge 和 TrustBox EdgeXL 设备而构建,这两种设备均预加载了 Open Enclave SDK 和 Azure IoT Edge。

有关详细信息,请参阅 Getting started with Open Enclave for the Scalys TrustBox(开始为 Scalys TrustBox 使用 Open Enclave)。

开发和部署

当你准备好开发和部署机密应用程序时,用于 Visual Studio Code 的 Microsoft Open Enclave 扩展便可以提供帮助了。 可以使用 Linux 或 Windows 作为开发计算机,以便针对 TrustBox 开发模块。

后续步骤

了解如何开始使用用于 Visual Studio Code 的 Open Enclave 扩展开发作为 IoT Edge 模块的机密应用程序。