IOCTL_EHSTOR_BANDMGMT_ERASE_BAND IOCTL (ehstorbandmgmt.h)
IOCTL_EHSTOR_BANDMGMT_ERASE_BAND要求では、バンドの認証キーが暗号化によって消去され、リセットされます。 バンドの残りの構成は変更されません。
メジャー コード
[入力バッファー]
Irp-AssociatedIrp.SystemBuffer の>入力バッファーには、ERASE_BAND_PARAMETERSと、場合によってはAUTH_KEY構造体が含まれている必要があります。
ERASE_BAND_PARAMETERSの NewAuthKeyOffset メンバーが EHSTOR_BANDMGR_NO_KEY に設定されている場合、システム バッファー内の入力データにAUTH_KEY構造体を含める必要はありません。
入力バッファーの長さ
Parameters.DeviceIoControl.InputBufferLength は、バッファーのサイズ (バイト単位) を示します。これは、少なくとも sizeof(ERASE_BAND_PARAMETERS) + sizeof(AUTH_KEY)
である必要があります。
出力バッファー
[なし] :
出力バッファーの長さ
[なし] :
入力/出力バッファー
[なし] :
入力/出力バッファーの長さ
[なし] :
ステータス ブロック
[状態] フィールドには、次のいずれかの値を返すことができます。
状態の値 | 説明 |
---|---|
STATUS_SUCCESS | バンドは正常に消去されました。 |
STATUS_INVALID_DEVICE_REQUEST | ストレージ デバイスは、バンド管理をサポートしていません。 |
STATUS_INVALID_BUFFER_SIZE | 入力バッファーのサイズが正しくありません。 |
STATUS_INVALID_PARAMETER | 入力バッファー内の情報が無効です。 |
STATUS_ACCESS_DENIED | 消去認証キーは既定のキーではなく、バンドを消去できません。 |
STATUS_NOT_FOUND | 指定された選択基準に対してバンドが見つかりませんでした。 |
STATUS_IO_DEVICE_ERROR | 通信に失敗しました。 ストレージ デバイスがセキュリティ プロトコルと互換性がない可能性があります。 |
注釈
現在の消去認証キーは、 IOCTL_EHSTOR_BANDMGMT_ERASE_BAND 要求では提供されません。 ストレージ デバイスの消去認証キーは、以前に構成されています。
Windows では、ストレージ デバイスの消去認証キーを変更する方法は提供されていません。 正しいパラメーターがシステム バッファーの入力として指定されている場合、この要求は成功するはずです。 消去認証キーが Windows の外部 (オペレーティング システムが異なるデュアルブート環境など) で変更された場合、この要求は失敗する可能性があります。
IOCTL_EHSTOR_BANDMGMT_ERASE_BANDでバンドが消去された場合、残っている以前のプロパティはバンドの開始とバンド サイズのみです。 前のメディア暗号化キーが削除され、新しいキーが生成されます。 ロックは、読み取りと書き込みの両方で PERSISTANT_UNLOCK に設定されます。 以前に設定したセキュリティ メタデータは消去されます。 ERASE_BAND_PARAMETERSで指定された新しい認証キーは、既定のキーの使用が示されていない限り設定されます。
他のアプリケーションが既定のキーを使用してバンドを制御して消去しないようにするには、新しい認証キーを IOCTL_EHSTOR_BANDMGMT_ERASE_BAND 要求に含める必要があります。
この要求によってバンド テーブルに加えられた変更は、IOCTL 要求が完了する前に、デバイスにアトミックにコミットされます。 したがって、システムまたは電源障害が発生した場合は、すべてのプロパティが設定されているか、プロパティがまったく設定されていない状態でバンドが変更されていることが保証されます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 8 |
Header | ehstorbandmgmt.h (EhStorBandMgmt.h を含む) |