IMAGE_ENCLAVE_CONFIG64 结构 (winnt.h)
为运行 64 位 Windows 的系统定义 enclave 配置的格式。
语法
typedef struct _IMAGE_ENCLAVE_CONFIG64 {
DWORD Size;
DWORD MinimumRequiredConfigSize;
DWORD PolicyFlags;
DWORD NumberOfImports;
DWORD ImportList;
DWORD ImportEntrySize;
BYTE FamilyID[IMAGE_ENCLAVE_SHORT_ID_LENGTH];
BYTE ImageID[IMAGE_ENCLAVE_SHORT_ID_LENGTH];
DWORD ImageVersion;
DWORD SecurityVersion;
ULONGLONG EnclaveSize;
DWORD NumberOfThreads;
DWORD EnclaveFlags;
} IMAGE_ENCLAVE_CONFIG64, *PIMAGE_ENCLAVE_CONFIG64;
成员
Size
IMAGE_ENCLAVE_CONFIG64结构的大小(以字节为单位)。
MinimumRequiredConfigSize
图像加载程序必须能够处理的 IMAGE_ENCLAVE_CONFIG64 结构的最小大小,才能使 enclave 可用。 此成员允许 enclave 通知映像加载器的早期版本,映像加载程序可以安全地加载 enclave,并忽略添加到 IMAGE_ENCLAVE_CONFIG64 的可选成员,以便为更高版本的 enclave。 如果映像加载程序可以处理的 IMAGE_ENCLAVE_CONFIG64 的大小小于 MinimumRequiredConfigSize,则无法安全地运行 enclave。
如果 MinimumRequiredConfigSize 为零,则假定图像加载程序必须能够处理的 IMAGE_ENCLAVE_CONFIG64 结构的最小大小才能使 enclave 可用,并包括 MinimumRequiredConfigSize 成员。
PolicyFlags
一个标志,指示 enclave 是否允许调试。
值 | 含义 |
---|---|
IMAGE_ENCLAVE_POLICY_DEBUGGABLE0x00000001 |
enclave 允许调试。 |
0x00000000 |
enclave 不允许调试。 |
NumberOfImports
ImportList 成员指向的图像数组中的图像数。
ImportList
enclave 映像可以导入的映像数组的相对虚拟地址,以及每个映像的标识信息。
ImportEntrySize
ImportList 成员指向的图像数组中每个图像的大小。
FamilyID[IMAGE_ENCLAVE_SHORT_ID_LENGTH]
enclave 的作者分配给 enclave 的系列标识符。
ImageID[IMAGE_ENCLAVE_SHORT_ID_LENGTH]
enclave 的作者分配给 enclave 的图像标识符。
ImageVersion
enclave 的作者分配给 enclave 的版本号。
SecurityVersion
enclave 的作者分配给 enclave 的安全版本号。
EnclaveSize
enclave 专用地址范围的预期虚拟大小(以字节为单位)。
NumberOfThreads
可以在 enclave 中创建的最大线程数。
EnclaveFlags
一个标志,指示映像是否适合用作 enclave 中的主映像。
值 | 含义 |
---|---|
IMAGE_ENCLAVE_FLAG_PRIMARY_IMAGE0x00000001 |
该映像适合用作 enclave 中的主映像。 |
0x00000000 |
该映像不适合用作 enclave 中的主映像。 |
注解
IMAGE_ENCLAVE_CONFIG结构定义为运行 64 位 Windows 的系统上IMAGE_ENCLAVE_CONFIG64结构的另一个名称。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 10版本 1709 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2016 [仅限桌面应用] |
标头 | winnt.h |