次の方法で共有


BAND_SECURITY_INFO 構造体 (ehstorbandmgmt.h)

BAND_SECURITY_INFO構造体は、バンド テーブル エントリ クエリのセキュリティ情報を指定します。

構文

typedef struct _BAND_SECURITY_INFO {
  ULONG      StructSize;
  LOCKSTATE  ReadLock;
  LOCKSTATE  WriteLock;
  ALGOIDTYPE CryptoAlgoIdType;
  union {
    struct {
      ULONG Offset;
      ULONG Length;
    } CryptoAlgoOidString;
    ULONG CryptoAlgoNumericId;
  };
  BYTE       Metadata[32];
} BAND_SECURITY_INFO, *PBAND_SECURITY_INFO;

メンバー

StructSize

この構造体のサイズ (バイト単位)。 sizeof(BAND_SECURITY_INFO) に設定します。

ReadLock

バンドが読み取り用にアクセスできるかどうか、および読み取りロックが電源リセットによってどのように影響を受けるか。

WriteLock

書き込み用にバンドにアクセスできるかどうか、および書き込みロックが電源リセットによってどのように影響を受けるか。

CryptoAlgoIdType

使用される暗号化アルゴリズム識別子の種類。 これは AlgoIdTypeOidString に設定する必要があります。

CryptoAlgoOidString

バンド内のデータを保護するために使用される暗号化アルゴリズム。

CryptoAlgoOidString.Offset

暗号化アルゴリズム OID 文字列が開始される、この構造体の先頭からのオフセット。

CryptoAlgoOidString.Length

暗号化アルゴリズムを識別する OID 文字列の長さ。 これは、OID 文字列の NULL 終端記号を含むバイト長の値です。

CryptoAlgoNumericId

予約済み。

Metadata[32]

キー マネージャーが使用できるメタデータ フィールド。

注釈

ReadlockWritelock はどちらも LOCKSTATE 値であり、ロック状態とロック永続化を示します。 値は次のいずれかです。

ロック状態 説明
INVALID_LOCK_STATE ロック状態が無効です。
PERSISTENT_UNLOCK デバイスのロックは解除され、電源リセット中もロック解除されたままになります。
NONPERSISTENT_UNLOCK デバイスのロックは解除されますが、電源リセット中にロックされます。
PERSISTENT_LOCK デバイスはロックされ、電源リセット中もロックされたままになります。
 

CryptoAlgoOidString は、IOCTL_EHSTOR_BANDMGMT_ENUMERATE_BANDS要求の ENUMERATE_BANDS_PARAMETERSFlags メンバーにENUMBANDS_REPORT_CRYPTO_ALGOが設定されている場合にのみ、データ暗号化アルゴリズムを指定します。 それ以外の場合、 CryptoAlgoOidString.OffsetCryptoAlgoOidString.Length の両方が 0 に設定されます。 CryptoAlgoOidString に対して返される可能性のある暗号化アルゴリズム OID 文字列を次に示します。

アルゴリズム OID
IAES128-ECB 2.16.840.1.101.3.4.1.1
AES128-CBC 2.16.840.1.101.3.4.1.2.
AES128-OFB 2.16.840.1.101.3.4.1.3
AES128-CFB 2.16.840.1.101.3.4.1.4
AES128-XTS 1.3.111.2.1619.0.1.1
AES256-ECB 2.16.840.1.101.3.4.1.41
AES256-CBC 2.16.840.1.101.3.4.1.42
AES256-OFB 2.16.840.1.101.3.4.1.43
AES256-CFB 2.16.840.1.101.3.4.1.44
AES256-XTS 1.3.111.2.1619.0.1.2
 

入力パラメーター セットで BAND_SECURITY_INFO を使用する場合、 CryptoAlgoIdTypeCryptoAlgoOidString は使用されず、0 に設定する必要があります。

要件

要件
サポートされている最小のクライアント Windows 8 以降で使用可能
Header ehstorbandmgmt.h (EhStorBandMgmt.h を含む)

こちらもご覧ください

BAND_TABLE_ENTRY

ENUMERATE_BANDS_PARAMETERS

IOCTL_EHSTOR_BANDMGMT_CREATE_BAND

IOCTL_EHSTOR_BANDMGMT_ENUMERATE_BANDS