Поделиться через


структура IMAGE_ENCLAVE_CONFIG64 (winnt.h)

Определяет формат конфигурации анклава для систем под управлением 64-разрядной Ос Windows.

Синтаксис

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 , которую должен обрабатывать загрузчик изображений, чтобы анклава был доступен для использования. Этот элемент позволяет анклавам сообщить более ранней версии загрузчика изображений, что загрузчик изображений может безопасно загрузить анклава и игнорировать необязательные элементы, добавленные в IMAGE_ENCLAVE_CONFIG64 для более поздних версий анклава. Если размер IMAGE_ENCLAVE_CONFIG64 , который может обрабатывать загрузчик образов, меньше минимального значения MinimumRequiredConfigSize, анклав не может выполняться безопасно.

Если параметр MinimumRequiredConfigSize равен нулю, минимальный размер структуры IMAGE_ENCLAVE_CONFIG64 , которую должен обрабатывать загрузчик изображений, чтобы анклав мог использоваться для использования, предполагается, что размер структуры должен быть размером структуры и включая элемент MinimumRequiredConfigSize .

PolicyFlags

Флаги, указывающие политики, заданные для анклава. Эти флаги можно задать, чтобы указать, разрешает ли анклава отладку и ограничивается ли анклав собственным пространством памяти.

Ценность Значение
0x00000000 Анклава не разрешает отладку.
IMAGE_ENCLAVE_POLICY_DEBUGGABLE
0x00000001
Анклава разрешает отладку.
IMAGE_ENCLAVE_POLICY_STRICT_MEMORY
0x00000002
Этот флаг ограничивает доступ анклава к адресной области его содержащего процесса. Эта политика применяется ко всем потокам анклава. Анклава должен использовать API EnclaveCopyIntoEnclave и EnclaveCopyOutOfEnclave для доступа к содержащей памяти процесса.

Заметка: Доступ к адресной области содержащего процесса также можно ограничить путем вызова API EnclaveRestrictContainingProcessAccess . Этот API также можно использовать для расслабления этой политики во время выполнения и восстановления доступа к содержащей памяти процесса.

NumberOfImports

Количество изображений в массиве изображений, на которые указывает член ImportList .

ImportList

Относительный виртуальный адрес массива изображений, которые может импортировать образ анклава, с информацией об удостоверениях для каждого образа.

ImportEntrySize

Размер каждого изображения в массиве изображений, на которые указывает член ImportList .

FamilyID[IMAGE_ENCLAVE_SHORT_ID_LENGTH]

Идентификатор семейства, назначенный автору анклава анклава.

ImageID[IMAGE_ENCLAVE_SHORT_ID_LENGTH]

Идентификатор изображения, назначенный автору анклава анклава.

ImageVersion

Номер версии, назначенный автору анклава анклава.

SecurityVersion

Номер версии безопасности, назначенный автору анклава анклава.

EnclaveSize

Ожидаемый виртуальный размер диапазона частных адресов для анклава в байтах.

NumberOfThreads

Максимальное количество потоков, которые можно создать в анклавах.

EnclaveFlags

Флаг, указывающий, подходит ли изображение для использования в качестве основного изображения в анклавах.

Ценность Значение
0x00000000 Изображение не подходит для использования в качестве основного изображения в анклавах.
IMAGE_ENCLAVE_FLAG_PRIMARY_IMAGE
0x00000001
Изображение подходит для использования в качестве основного изображения в анклавах.

Замечания

Структура IMAGE_ENCLAVE_CONFIG определяется как другое имя для структуры IMAGE_ENCLAVE_CONFIG64 в системах под управлением 64-разрядной windows.

Требования

Требование Ценность
Минимальный поддерживаемый клиент Windows 10 версии 1709 [только классические приложения]
минимальный поддерживаемый сервер Windows Server 2016 [только настольные приложения]
Заголовок winnt.h

См. также

Структуры анклава

IMAGE_ENCLAVE_CONFIG32

АнклаваCopyIntoEnclave

АнклаваCopyOutOfEnclave

АнклаваRestrictContainingProcessAccess