IOCTL_EHSTOR_BANDMGMT_ACTIVATE IOCTL (ehstorbandmgmt.h)
此 IOCTL_EHSTOR_BANDMGMT_ACTIVATE 要求會傳送,以在儲存裝置上啟用安全性功能和頻外管理。 要求包括啟用選項和驗證金鑰。
Irp->AssociatedIrp.SystemBuffer 的輸入緩衝區包含 ACTIVATE_REVERT_PARAMETERS 結構。 ACTIVATE_REVERT_PARAMETERS 會在 ehstorbandmgmt.h 中宣告為下列專案。
typedef struct _ACTIVATE_REVERT_PARAMETERS
{
ULONG StructSize;
ULONG Flags;
ULONG AuthKeyOffset;
} ACTIVATE_REVERT_PARAMETERS;
在系統緩衝區中遵循 ACTIVATE_REVERT_PARAMETERS 是 AUTH_KEY 結構。 這會保存驗證金鑰的金鑰數據位元組。 AUTH_KEY 會在 ehstorbandmgmt.h 中宣告如下。
typedef struct _AUTH_KEY
{
ULONG KeySize;
UCHAR Key[ANYSIZE_ARRAY];
} AUTH_KEY;
ACTIVATE_REVERT_PARAMETERS 結構的長度。
沒有。
沒有。
下列其中一個值可以在 [狀態] 字段中傳回。
狀態值 | 描述 |
---|---|
STATUS_SUCCESS | 記憶體裝置上的安全性功能已啟用。 |
STATUS_INVALID_DEVICE_REQUEST | 存儲設備不支援頻帶管理。 |
STATUS_INVALID_BUFFER_SIZE | 輸入緩衝區大小無效。 |
STATUS_INVALID_PARAMETER | 輸入緩衝區中的資訊無效。 |
STATUS_ACCESS_DENIED | 驗證金鑰無效。 啟用遭到拒絕。 |
STATUS_DEVICE_CONFIGURATION_ERROR | 系統無法以支援的模式設定裝置。 |
STATUS_IO_DEVICE_ERROR | 通訊失敗。 存儲設備可能與安全性通訊協定不相容。 |
STATUS_INVALID_DEVICE_STATE | 存儲設備已啟動。 |
STATUS_NOT_SUPPORTED | 裝置上的安全性功能因為組策略設定而未啟用。 |
如果從此要求傳回STATUS_SUCCESS,驅動程式或應用程式就可以傳送 IOCTL_EHSTOR_BANDMGMT_QUERY_CAPABILITIES 要求來擷取裝置已啟用的頻帶管理功能。
在成功從 IOCTL_EHSTOR_BANDMGMT_ACTIVATE傳回之前,不會啟動裝置。 在裝置啟用之前,只會 IOCTL_EHSTOR_BANDMGMT_QUERY_CAPABILITIES成功傳回的頻帶管理 IOCTL。 啟用之後,即可使用其餘的頻外管理IOCTL。
增強型存放設備的啟用是由系統的組策略設定所控制。 HKLM\Software\Policies\Microsoft\Windows\EnhancedStorageDevices\TCGSecurityActivationDisabled 的登錄值會決定是否啟用安全性啟用。 REG_DWORD值為 0 允許在儲存裝置上啟用安全性。 否則,值為 1 會停用安全性啟用,且 IOCTL_EHSTOR_BANDMGMT_ACTIVATE 要求會以 STATUS_NOT_SUPPORTED 傳回。
要求 | 價值 |
---|---|
最低支援的用戶端 | 從 Windows 8 開始提供。 |
標頭 | ehstorbandmgmt.h (include EhStorBandMgmt.h) |