Compartir a través de


IOCTL_EHSTOR_BANDMGMT_SET_BAND_SECURITY IOCTL (ehstorbandmgmt.h)

Las propiedades de seguridad de las bandas de un dispositivo de almacenamiento administrado por banda se modifican con la solicitud de IOCTL_EHSTOR_BANDMGMT_SET_BAND_SECURITY .

Código principal

IRP_MJ_DEVICE_CONTROL

Búfer de entrada

El búfer de Irp-AssociatedIrp.SystemBuffer> debe contener una estructura de SET_BAND_SECURITY_PARAMETERS seguida de las estructuras AUTH_KEY y BAND_SECURITY_INFO.

Si el miembro AuthKeyOffset de SET_BAND_SECURITY_PARAMETERS se establece en EHSTOR_BANDMGR_NO_KEY, los datos de entrada del búfer del sistema no necesitan incluir una estructura de AUTH_KEY . Además, si no se proporciona una nueva clave de autenticación, no se incluye ninguna estructura de clave actualizada.

Longitud del búfer de entrada

Parameters.DeviceIoControl.InputBufferLength indica el tamaño, en bytes, del búfer, que debe ser al menos sizeof (SET_BAND_SECURITY_PARAMETERS) + 2 * sizeof(AUTH_KEY) + sizeof(BAND_SECURITY_INFO) cuando se requieren todas las estructuras de entrada.

Búfer de salida

Ninguno.

Longitud del búfer de salida

Ninguno.

Bloque de estado

Se puede devolver uno de los valores siguientes en el campo Estado .

Valor de estado Descripción
STATUS_SUCCESS Se cambiaron las propiedades de seguridad de la banda.
STATUS_INVALID_DEVICE_REQUEST El dispositivo de almacenamiento no admite la administración de bandas.
STATUS_INVALID_BUFFER_SIZE El tamaño del búfer de entrada no es válido.
STATUS_INVALID_PARAMETER La información del búfer de entrada no es válida.
STATUS_NOT_FOUND No se encontró una banda para los criterios de selección proporcionados.
STATUS_ACCESS_DENIED La clave de autenticación proporcionada no es válida.
STATUS_IO_DEVICE_ERROR Error de comunicación. El dispositivo de almacenamiento podría ser incompatible con los protocolos de seguridad.

Comentarios

El bloqueo y desbloqueo de lectura y escritura para bandas se establecen con este IOCTL en la estructura BAND_SECURITY_INFO incluida como entrada en el búfer del sistema.

Los cambios de clave de autenticación no afectarán al estado de bloqueo de la banda. No es necesario desmontar un volumen para cambiar una clave de autenticación con esta solicitud.

Cuando se desbloquea una banda, lo que significa que los miembros Readlock o WriteLock de BAND_SECURITY_INFO son FALSE, el controlador de silo almacenará en caché la clave de autenticación proporcionada si SETBANDSEC_AUTHKEY_CACHING_ENABLED se establece en el miembro Flags de SET_BAND_SECURITY_PARAMETERS.

Como caso especial, este IOCTL se puede usar para notificar al conductor del silo que una banda se desbloqueó sin el uso de los miembros de bloqueo en BAND_SECURITY_INFO. Para ello, el miembro NewAuthKeyOffset de SET_BAND_SECURITY_PARAMETERS se establece en CurrentAuthKeyOffset con BandSecurityInfoOffset establecido en 0. En este caso, no se producen cambios de seguridad, pero la clave proporcionada en CurrentAuthKeyOffset se almacena en caché en la memoria, siempre que SETBANDSEC_AUTHKEY_CACHING_ENABLED se establezca en Marcas.

Los cambios realizados en la tabla de bandas por esta solicitud se confirman en el dispositivo de forma atómica antes de que se complete la solicitud IOCTL. Por lo tanto, se garantiza que la banda se modifique con todas sus propiedades establecidas o que no se establezca ninguna propiedad en absoluto en caso de que se produzca un error de alimentación o sistema.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible a partir de Windows 8
Encabezado ehstorbandmgmt.h (include EhStorBandMgmt.h)

Consulte también

BAND_SECURITY_INFO

IOCTL_EHSTOR_BANDMGMT_DELETE_BAND

SET_BAND_SECURITY_PARAMETERS