IOCTL_EHSTOR_DRIVER_PERFORM_AUTHZ IOCTL (ehstorioctl.h)
IOCTL_EHSTOR_DRIVER_PERFORM_AUTHZ 是由增強型記憶體類別驅動程式 (EHSTOR) 傳送至接收器驅動程式,以起始隨選驗證或取消驗證。
主要程序代碼
輸入緩衝區
Irp-AssociatedIrp.SystemBuffer> 的輸入緩衝區必須包含AUTHZ_STATE結構,指出要執行的驗證作業類型。 AUTHZ_STATE 會在 ehstorioctl.h 中宣告如下。
typedef struct _AUTHZ_STATE
{
ULONG AuthzState;
} AUTHZ_STATE;
AuthzState 的值會指定驗證作業。 這是下列其中一項。
值 | 描述 |
---|---|
0 | 執行隨選驗證。 |
AUTHZSTATE_AUTHENTICATE | 執行隨選驗證。 |
AUTHZSTATE_CLEAR_AUTHKEY_CACHE | 執行隨選取消驗證,並清除快取的驗證金鑰。 |
輸入緩衝區長度
AUTHZ_STATE 結構的長度。
輸出緩衝區
無。
輸出緩衝區長度
無。
狀態區塊
當驗證狀態變更時,接收器驅動程式會在 [ 狀態 ] 欄位中傳回STATUS_SUCCESS。 否則會傳回STATUS_UNSUCCESSFUL。
備註
此 IOCTL 是由 EHSTOR 傳送至支援隨選驗證的接收器驅動程式。 接收器驅動程式會在先前IOCTL_EHSTOR_DRIVER_REPORT_CAPABILITIES要求中通知 EHSTOR 這項功能,並在 SILO_DRIVER_CAPABILITES 的 Capabilities 成員中設定CAP_ON_DEMAND_AUTHENTICATION旗標。
為了回應此 IOCTL,接收器驅動程式會執行裝置的驗證或驗證。 對於帶狀裝置,接收器驅動程式會視系統緩衝區中指定的作業而定,盡可能解除鎖定或鎖定讀取和寫入數目的訊號。
如果接收器驅動程式無法執行要求的作業,它將不會變更裝置的驗證狀態。
如果AUTHZ_STATE的 AuthzState 成員設定為 AUTHZSTATE_CLEAR_AUTHKEY_CACHE,則除了取消驗證之外,接收器驅動程式還會清除其驗證密鑰快取。 當 系統關閉或休眠時,會設定AUTHZSTATE_CLEAR_AUTHKEY_CACHE。 這可防止在休眠檔案中存在密鑰快取。
如果裝置支援多個尋址接收器,則每個尋址接收器的驗證都是獨佔的。 一個接收器驅動程式的驗證作業不會影響另一個接收器驅動程式所設定的驗證狀態。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 從 Windows 8 開始提供 |
標頭 | ehstorioctl.h (包含 EhStorIoctl.h) |