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 组合。
价值 | 意义 |
---|---|
|
可以缓存新的身份验证密钥,以自动执行某些带段作。 |
Reserved
BandId
要返回其信息的单个带的标识符。 当使用 BandId 选择单个带时,BandSize 必须为 0。 若要使用 BandStart 和 BandSize 而不是 BandId 来选择带,请将 BandId = (ULONG) –1。
BandStart
存储设备上的起始字节位置开始带搜索。 尝试在 BandStart或之后匹配一个乐队。
CurrentAuthKeyOffset
包含带的当前身份验证密钥的 AUTH_KEY 结构的偏移量(以字节为单位)。 此身份验证密钥是必需的,必须遵循此结构。 偏移量从 SET_BAND_SECURITY_PARAMETERS开始。 AUTH_KEY 在 ehstorbandmgmt.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_KEY 在 ehstorbandmgmt.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_CAPABILITIES的 MaxBandCount 成员,则 BandID 用作带匹配的唯一选择条件。 如果 BandID == –1,则 BandStart 用作选择带的匹配条件。 如果没有与任一选择条件匹配的带,则在 IoStatus 块中返回 IOCTL_EHSTOR_BANDMGMT_SET_BAND_SECURITYSTATUS_INVALID_PARAMETER。
如果 BandID 和 BandStart 都设置为 –1,则 IOCTL_EHSTOR_BANDMGMT_SET_BAND_SECURITY 请求将更改全局带的属性。
NewAuthKeyOffset 和 BandSecurityInfoOffset 是可选的,具体取决于作的要求。 如果仅更改身份验证密钥,则 NewAuthKeyOffset 设置为新密钥 AUTH_KEY 结构的位置,BandSecurityInfoOffset 设置为零。 同样,如果仅更改安全属性,则 BandSecurityInfoOffset 设置为 BAND_SECURITY_INFO 的位置,NewAuthKeyOffset 设置为 0。
CryptoAlgoIdType 和 CryptoAlgoOidStringBAND_SECURITY_INFO 结构的成员在 BandSecurityInfoOffset 中不使用,并且必须设置为 0。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | 从 Windows 8 开始可用 |
标头 | ehstorbandmgmt.h (包括 EhStorBandMgmt.h) |