SET_BAND_SECURITY_PARAMETERS结构(ehstorbandmgmt.h)

SET_BAND_SECURITY_PARAMETERS 结构中指定用于 IOCTL_EHSTOR_BANDMGMT_SET_BAND_SECURITY 请求的存储设备上的带的安全属性的参数。

语法

typedef struct _SET_BAND_SECURITY_PARAMETERS {
  ULONG         StructSize;
  ULONG         Flags;
  ULONG         Reserved;
  ULONG         BandId;
  LARGE_INTEGER BandStart;
  ULONG         CurrentAuthKeyOffset;
  ULONG         NewAuthKeyOffset;
  ULONG         BandSecurityInfoOffset;
} SET_BAND_SECURITY_PARAMETERS, *PSET_BAND_SECURITY_PARAMETERS;

成员

StructSize

此结构的大小(以字节为单位)。 设置为 sizeof(SET_BAND_SECURITY_PARAMETERS)。

Flags

安全参数标志。 此值是以下内容的按位 OR 组合。

价值 意义
SETBANDSEC_AUTHKEY_CACHING_ENABLED
可以缓存新的身份验证密钥,以自动执行某些带段作。

Reserved

BandId

要返回其信息的单个带的标识符。 当使用 BandId 选择单个带时,BandSize 必须为 0。 若要使用 BandStartBandSize 而不是 BandId 来选择带,请将 BandId = (ULONG) –1。

BandStart

存储设备上的起始字节位置开始带搜索。 尝试在 BandStart或之后匹配一个乐队。

CurrentAuthKeyOffset

包含带的当前身份验证密钥的 AUTH_KEY 结构的偏移量(以字节为单位)。 此身份验证密钥是必需的,必须遵循此结构。 偏移量从 SET_BAND_SECURITY_PARAMETERS开始。 AUTH_KEYehstorbandmgmt.h 中声明为以下内容。

typedef struct _AUTH_KEY
{
    ULONG   KeySize;
    UCHAR   Key[ANYSIZE_ARRAY];
} AUTH_KEY;

KeySize

键数据 的大小(以字节为单位)。 如果 KeySize 设置为 0,则使用默认密钥。

钥匙

包含键数据的可变长度字节数组。

若要将默认身份验证密钥指定为带,请设置 AuthKeyOffset = EHSTOR_BANDMGR_NO_KEY

NewAuthKeyOffset

包含带的新身份验证密钥的 AUTH_KEY 结构的偏移量(以字节为单位)。 偏移量从 SET_BAND_SECURITY_PARAMETERS开始。 AUTH_KEYehstorbandmgmt.h 中声明为以下内容。

typedef struct _AUTH_KEY
{
    ULONG   KeySize;
    UCHAR   Key[ANYSIZE_ARRAY];
} AUTH_KEY;

KeySize

键数据 的大小(以字节为单位)。 如果 KeySize 设置为 0,则使用默认密钥。

钥匙

包含键数据的可变长度字节数组。

若要将默认身份验证密钥分配到带,请设置 AuthKeyOffset = EHSTOR_BANDMGR_NO_KEY。 如果 NewAuthKeyOffset == CurrentAuthKeyOffset,则乐队的身份验证密钥保持不变。

BandSecurityInfoOffset

BAND_SECURITY_INFO 结构的偏移量(以字节为单位)。 偏移量从 SET_BAND_SECURITY_PARAMETERS开始。

言论

优先于 BandID 进行带选择。 如果 BandID 大于 0,并且 BandID 小于 BAND_MANAGEMENT_CAPABILITIESMaxBandCount 成员,则 BandID 用作带匹配的唯一选择条件。 如果 BandID == –1,则 BandStart 用作选择带的匹配条件。 如果没有与任一选择条件匹配的带,则在 IoStatus 块中返回 IOCTL_EHSTOR_BANDMGMT_SET_BAND_SECURITYSTATUS_INVALID_PARAMETER。

如果 BandIDBandStart 都设置为 –1,则 IOCTL_EHSTOR_BANDMGMT_SET_BAND_SECURITY 请求将更改全局带的属性。

NewAuthKeyOffsetBandSecurityInfoOffset 是可选的,具体取决于作的要求。 如果仅更改身份验证密钥,则 NewAuthKeyOffset 设置为新密钥 AUTH_KEY 结构的位置,BandSecurityInfoOffset 设置为零。 同样,如果仅更改安全属性,则 BandSecurityInfoOffset 设置为 BAND_SECURITY_INFO 的位置,NewAuthKeyOffset 设置为 0。

CryptoAlgoIdTypeCryptoAlgoOidStringBAND_SECURITY_INFO 结构的成员在 BandSecurityInfoOffset 中不使用,并且必须设置为 0。

要求

要求 价值
最低支持的客户端 从 Windows 8 开始可用
标头 ehstorbandmgmt.h (包括 EhStorBandMgmt.h)

另请参阅

BAND_LOCATION_INFO

BAND_MANAGEMENT_CAPABILITIES

IOCTL_EHSTOR_BANDMGMT_SET_BAND_LOCATION