IOCTL_EHSTOR_BANDMGMT_ACTIVATE IOCTL (ehstorbandmgmt.h)
Этот запрос IOCTL_EHSTOR_BANDMGMT_ACTIVATE отправляется для активации функций безопасности и управления полосами на устройстве хранения. Запрос включает параметры активации и ключ проверки подлинности.
Основной код
Входной буфер
Входной буфер в Irp->AssociatedIrp.SystemBuffer содержит структуру ACTIVATE_REVERT_PARAMETERS. ACTIVATE_REVERT_PARAMETERS объявляется в ehstorbandmgmt.h следующим образом.
typedef struct _ACTIVATE_REVERT_PARAMETERS
{
ULONG StructSize;
ULONG Flags;
ULONG AuthKeyOffset;
} ACTIVATE_REVERT_PARAMETERS;
После ACTIVATE_REVERT_PARAMETERS в системном буфере используется структура AUTH_KEY. Это содержит байты ключевых данных для ключа проверки подлинности. AUTH_KEY объявлен в ehstorbandmgmt.h следующим образом.
typedef struct _AUTH_KEY
{
ULONG KeySize;
UCHAR Key[ANYSIZE_ARRAY];
} AUTH_KEY;
Длина входного буфера
Длина структуры ACTIVATE_REVERT_PARAMETERS.
Выходной буфер
Никакой.
Длина выходного буфера
Никакой.
Блок состояния
Одно из следующих значений можно вернуть в поле Status.
Значение состояния | Описание |
---|---|
STATUS_SUCCESS | Функции безопасности на устройстве хранения были активированы. |
STATUS_INVALID_DEVICE_REQUEST | Устройство хранения не поддерживает управление полосами. |
STATUS_INVALID_BUFFER_SIZE | Недопустимый размер входного буфера. |
STATUS_INVALID_PARAMETER | Недопустимые сведения в входном буфере. |
STATUS_ACCESS_DENIED | Недопустимый ключ проверки подлинности. Активация запрещена. |
STATUS_DEVICE_CONFIGURATION_ERROR | Система не может настроить устройство в поддерживаемом режиме. |
STATUS_IO_DEVICE_ERROR | Сбой связи. Устройство хранения может быть несовместимо с протоколами безопасности. |
STATUS_INVALID_DEVICE_STATE | Устройство хранилища уже активировано. |
STATUS_NOT_SUPPORTED | Функции безопасности на устройстве не были активированы из-за параметра групповой политики. |
Замечания
Если STATUS_SUCCESS возвращается из этого запроса, драйвер или приложение может отправить запрос IOCTL_EHSTOR_BANDMGMT_QUERY_CAPABILITIES для получения возможностей управления включенными группами устройства.
Перед успешной возвратом из IOCTL_EHSTOR_BANDMGMT_ACTIVATEустройство не активируется. Пока устройство не будет активировано, единственным контроллером управления IOCTL, который будет успешно возвращен, является IOCTL_EHSTOR_BANDMGMT_QUERY_CAPABILITIES. После активации доступны оставшиеся списки операций ввода-вывода управления полосами.
Активация расширенных устройств хранилища управляется параметрами групповой политики системы. Значение реестра в HKLM\Software\Policies\Microsoft\Windows\EnhancedStorageDevices\TCGSecurityActivationDisabled определяет, включена ли активация безопасности. Значение REG_DWORD 0 позволяет активировать безопасность на устройстве хранения. В противном случае значение 1 отключает активацию безопасности, а запрос IOCTL_EHSTOR_BANDMGMT_ACTIVATE возвращается с STATUS_NOT_SUPPORTED.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно начиная с Windows 8. |
заголовка | ehstorbandmgmt.h (include EhStorBandMgmt.h) |