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 de silo pour lancer l’authentification à la demande ou la déauthentication.
Code principal
Mémoire tampon d'entrée
La mémoire tampon d’entrée sur 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 d’AuthzState spécifie l’opération d’authentification. Il s’agit de l’un des éléments suivants.
Valeur | Description |
---|---|
0 | Effectuez la déauthentication à la demande. |
AUTHZSTATE_AUTHENTICATE | Effectuez l’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 État par le pilote de silo si l’état d’authentification est modifié. Sinon, STATUS_UNSUCCESSFUL est retourné.
Remarques
Ce IOCTL est envoyé par EHSTOR à un pilote de silo qui prend en charge l’authentification à la demande. Le pilote de silo avertit EHSTOR de cette fonctionnalité dans une demande de IOCTL_EHSTOR_DRIVER_REPORT_CAPABILITIES précédente avec l’indicateur CAP_ON_DEMAND_AUTHENTICATION défini dans le membre Capabilities de SILO_DRIVER_CAPABILITES.
En réponse à ce IOCTL, le pilote de silo effectue l’authentification ou la déauthentication pour l’appareil. Pour les appareils à bandes, le pilote de silo va, en fonction de l’opération spécifiée dans la mémoire tampon système, déverrouiller ou verrouiller 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, l’état d’authentification d’un appareil ne sera pas modifié.
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ésauthentification. AUTHZSTATE_CLEAR_AUTHKEY_CACHE est défini lors de l’arrêt ou de la mise en veille prolongée du système. 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.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible à partir de Windows 8 |
En-tête | ehstorioctl.h (inclure EhStorIoctl.h) |