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


IOCTL_EHSTOR_BANDMGMT_DELETE_BAND IOCTL (ehstorbandmgmt.h)

Настроенная полоса на устройстве хранения удаляется с помощью запроса IOCTL_EHSTOR_BANDMGMT_DELETE_BAND. Параметр удаления входных параметров позволяет запросу выполнять криптографическую очистку данных группы.

Основной код

IRP_MJ_DEVICE_CONTROL

Входной буфер

Входной буфер в Irp->AssociatedIrp.SystemBuffer должен содержать DELETE_BAND_PARAMETERS и, возможно, структуру AUTH_KEY.

Если для элемента DELETE_BAND_PARAMETERSDELETE_BAND_PARAMETERSAuthKeyOff set задано значение EHSTOR_BANDMGR_NO_KEY, входные данные в буфере системы не должны содержать структуру AUTH_KEY.

Длина входного буфера

Parameters.DeviceIoControl.InputBufferLength указывает размер буфера в байтах, который должен быть по крайней мере sizeof (DELETE_BAND_PARAMETERS) + sizeof(AUTH_KEY).

Выходной буфер

Никакой.

Длина выходного буфера

Никакой.

Блок состояния

Одно из следующих значений можно вернуть в поле Status.

Значение состояния Описание
STATUS_SUCCESS Группа успешно удалена.
STATUS_INVALID_DEVICE_REQUEST Устройство хранения не поддерживает управление полосами.
STATUS_INVALID_BUFFER_SIZE Неправильный размер входного буфера.
STATUS_INVALID_PARAMETER Недопустимые сведения в входном буфере.
STATUS_ACCESS_DENIED Ключ проверки подлинности недопустим или заблокирован для записи.
STATUS_NOT_FOUND Группа не найдена для предоставленных условий выбора.
STATUS_IO_DEVICE_ERROR Сбой связи. Устройство хранения может быть несовместимо с протоколами безопасности.

Замечания

Ключ проверки подлинности требуется для удаления полосы без первой очистки. Чтобы запросить удаление полосы, флаг DELBAND_ERASE_BEFORE_DELETE установлен в элементе флагов DELETE_BAND_PARAMETERS.

После удаления группы все LBA, содержащиеся в удаленном диапазоне, возвращаются в глобальную группу. Условия блокировки глобальной группы теперь применяются к LBAs, возвращенным глобальной группе. LBAs, возвращенные в глобальную группу, теперь связаны с ключом мультимедиа для глобального диапазона и зашифрованными данными в этих LBAs невосстановимы.

Удаленная полоса остается в таблице группы драйвера silo, но становится не настроенной. Ключ проверки подлинности сбрасывается на значение по умолчанию, диапазон и метаданные ключа содержат нули, а состояния блокировки будут возвращаться к PERSISTENT_UNLOCK. Теперь группа доступна для перенастройки с помощью запроса IOCTL_EHSTOR_BANDMGMT_CREATE_BAND.

Удаление полосы без криптографического удаления не приведет к удалению ключа шифрования для этой группы. Позже можно создать группу с той же конфигурацией и идентификатором группы, что и удаленная полоса. В этом случае данные, ранее хранящиеся в полосе, не перезаписываются, так как удаление предыдущей полосы будет доступно. Чтобы избежать этой ситуации, удалите группу с флагом DELBAND_ERASE_BEFORE_DELETE, установленным в DELETE_BAND_PARAMETERS.

IOCTL_EHSTOR_BANDMGMT_DELETE_BAND не удаляет глобальную группу. Запрос на это вернет STATUS_INVALID_PARAMETER.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Доступно начиная с Windows 8.
заголовка ehstorbandmgmt.h (include EhStorBandMgmt.h)

См. также

DELETE_BAND_PARAMETERS

IOCTL_EHSTOR_BANDMGMT_CREATE_BAND

IOCTL_EHSTOR_BANDMGMT_ERASE_BAND