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

应用程序 enclave 开发

借助 Azure 机密计算,可以为运行 Intel Software Guard Extensions (SGX) 的虚拟机 (VM) 创建应用程序 enclave。 开始开发之前,请务必了解相关的工具和软件。

注意

如果尚未阅读 INTEL SGX VM 和 enclave 简介,请先阅读该文章,然后再继续操作。

应用程序 enclave

应用程序 enclave 是用于保护特定代码和数据的独立环境。 创建 enclave 时,必须确定应用程序的哪个部分在 enclave 中运行。 创建或管理 enclave 时,请确保为所选的部署堆栈使用兼容的 SDK 和框架。

你可以使用启用了 Intel SGX 的机密 VM,开发和部署应用程序 enclave。

开发应用

使用 enclave 生成的应用程序中有两个分区。

主机是“不受信任的”组件。 Enclave 应用程序在主机上运行。 主机是不受信任的环境。 在主机上部署 enclave 代码时,主机无法访问该代码。

Enclave是“受信任的”组件。 应用程序代码及其缓存的数据和内存在 enclave 中运行。 Enclave 环境会保护机密和敏感数据。 请确保在 enclave 中进行安全计算。

Diagram of an application, showing the host and enclave partitions. Inside the enclave are the data and application code components.

若要利用 enclave 和独立环境的强大功能,请选择支持机密计算的工具。 有多种工具支持 enclave 应用程序开发。 例如,可以使用以下开源框架:

设计应用程序时,请识别并确定需要在 enclave 中运行的部分。 受信任组件中的代码将与应用程序的其余部分隔离。 Enclave 进行了初始化并且代码加载到内存后,不受信任的组件将无法读取或更改该代码。

后续步骤