Partager via


IOCTL_EHSTOR_DRIVER_PERFORM_AUTHZ IOCTL (ehstorioctl.h)

IOCTL_EHSTOR_DRIVER_PERFORM_AUTHZ est envoyé par le pilote EHSTOR (Enhanced Storage Class Driver) au pilote silo pour lancer l’authentification à la demande ou la déauthentication.

Code principal

IRP_MJ_DEVICE_CONTROL

Mémoire tampon d’entrée

La mémoire tampon d’entrée à Irp->AssociatedIrp.SystemBuffer doit contenir une structure AUTHZ_STATE qui indique le type d’opération d’authentification à effectuer. AUTHZ_STATE est déclaré dans ehstorioctl.h comme suit.

typedef struct _AUTHZ_STATE
{
    ULONG AuthzState;
} AUTHZ_STATE;

La valeur de AuthzState spécifie l’opération d’authentification. Il s’agit de l’un des éléments suivants.

Valeur Description
0 Effectuez une déauthentication à la demande.
AUTHZSTATE_AUTHENTICATE Effectuez une authentification à la demande.
AUTHZSTATE_CLEAR_AUTHKEY_CACHE Effectuez la déauthentication à la demande et effacez les clés d’authentification mises en cache.

Longueur de la mémoire tampon d’entrée

Longueur d’une structure AUTHZ_STATE.

Mémoire tampon de sortie

Aucun.

Longueur de la mémoire tampon de sortie

Aucun.

Bloc d’état

STATUS_SUCCESS est retourné dans le champ Status par le pilote de silo si l’état d’authentification est modifié. Sinon, STATUS_UNSUCCESSFUL est retournée.

Remarques

Ce IOCTL est envoyé par EHSTOR à un pilote de silo qui prend en charge l’authentification à la demande. Le pilote de silo informe EHSTOR de cette fonctionnalité dans une demande de IOCTL_EHSTOR_DRIVER_REPORT_CAPABILITIES antérieure avec l’indicateur de CAP_ON_DEMAND_AUTHENTICATION défini dans le Capabilities membre de SILO_DRIVER_CAPABILITES.

En réponse à cette IOCTL, le pilote de silo effectue l’authentification ou la déauthentication pour l’appareil. Pour les appareils en bande, le pilote de silo, en fonction de l’opération spécifiée dans la mémoire tampon du système, déverrouille ou verrouille autant de bandes que possible pour les lectures et les écritures.

Si le pilote de silo ne parvient pas à effectuer l’opération demandée, il ne modifie pas l’état d’authentification d’un appareil.

Si le membre AuthzState de AUTHZ_STATE est défini sur AUTHZSTATE_CLEAR_AUTHKEY_CACHE, le pilote de silo efface son cache de clé d’authentification en plus de la déauthentication. AUTHZSTATE_CLEAR_AUTHKEY_CACHE est défini lorsque le système arrête ou met en veille prolongée. Cela empêche la présence du cache de clés dans le fichier de mise en veille prolongée.

Si un appareil prend en charge plusieurs silos, l’authentification par chaque silo est exclusive. Une opération d’authentification par un pilote de silo n’affecte pas l’état d’authentification défini par un autre pilote de silo.

Exigences

Exigence Valeur
client minimum pris en charge Disponible à partir de Windows 8
d’en-tête ehstorioctl.h (include EhStorIoctl.h)

Voir aussi

IOCTL_EHSTOR_DRIVER_REPORT_CAPABILITIES

SILO_DRIVER_CAPABILITES