Win32_EncryptableVolume 类的 EncryptAfterHardwareTest 方法

Win32_EncryptableVolume 类的 EncryptAfterHardwareTest 方法在硬件测试后开始加密完全解密的操作系统卷。 需要重新启动才能执行此硬件测试。 使用此方法而不是 Encrypt 方法来检查 BitLocker 将按预期工作。

注意

如果硬盘驱动器是硬件加密的,则此方法不会加密数据。 而是将带状态从“永久解锁”设置为已解锁。 如果带被锁定、解锁或只读,则驱动器被视为已加密。

 

语法

uint32 EncryptAfterHardwareTest(
  [in, optional] uint32 EncryptionMethod,
  [in, optional] uint32 EncryptionFlags
);

参数

EncryptionMethod [in, 可选]

类型: uint32

指定用于加密卷的加密算法和密钥大小。 将此参数留空以使用默认值零。 如果卷已部分加密或完全加密,则此参数的值必须为 0 或与卷的现有加密方法匹配。 如果已启用具有有效值的相应组策略设置,则此参数的值必须为 0 或匹配组策略设置。

如果相应的组策略设置无效,则使用带有扩散器的 AES 128 默认值。

含义
Unspecified
0
使用当前组策略设置(如果可用且有效),否则请使用默认加密方法。
1
AES 128 WITH 扩散器
使用高级加密标准 (AES) 算法通过扩散器层增强,并使用 128 位的 AES 密钥大小来加密卷。
2
AES 256 与漫射器
使用高级加密标准 (AES) 算法加密卷,该算法通过扩散器层增强,并使用 256 位的 AES 密钥大小进行加密。
AES_128
3
使用高级加密标准 (AES) 算法并使用 128 位的 AES 密钥大小来加密卷。
AES_256
4
使用高级加密标准 (AES) 算法加密卷,并使用 256 位的 AES 密钥大小。

 

EncryptionFlags [in, optional]

类型: uint32

描述加密行为的标志。

Windows 7、Windows Server 2008 R2、Windows Vista 企业版 和 Windows Server 2008:此参数不可用。

32 位与当前定义的以下位的组合。

含义
0x00000001
启动新的加密过程时,在仅数据加密模式下执行卷加密。 如果加密已暂停或停止,则调用 Encrypt 方法将有效地恢复转换,并且忽略此位的值。 仅当 EncryptEncryptAfterHardwareTest 方法从完全解密状态开始加密、正在解密状态或解密暂停状态时,此位才有效。 如果此位为零,表示未设置,则在启动新的加密过程时,将执行完全模式转换。
0x00000002
执行卷可用空间的按需擦除。 仅当卷当前未转换或擦除并且处于“加密”状态时,才允许调用具有此位集的 Encrypt 方法。
0x00010000
同步执行请求的操作。 调用将阻止,直到请求的操作已完成或中断。 只有 Encrypt 方法支持此标志。 当调用 Encrypt 以恢复停止或中断的加密或擦除时,或者加密或擦除正在进行时,可以指定此标志。 这允许调用方以同步方式继续等待,直到进程完成或中断。

 

返回值

类型: uint32

此方法返回以下代码之一,如果失败,则返回另一个错误代码。

此方法将立即返回。 如果卷已完全加密且未返回其他错误,则此方法返回零。

返回代码/值 说明
S_OK
0 (0x0)
方法成功。
E_INVALIDARG
2147942487 (0x80070057)
提供 EncryptionMethod 参数,但不在已知范围内或与当前组策略设置不匹配。
FVE_E_CANNOT_ENCRYPT_NO_KEY
2150694958 (0x8031002E)
卷不存在加密密钥。
使用 DisableKeyProtectors 方法禁用密钥保护程序 ,或者使用以下方法之一为卷指定密钥保护程序:
FVE_E_CLUSTERING_NOT_SUPPORTED
2150694942 (0x8031001E)
无法加密卷,因为此计算机配置为服务器群集的一部分。
FVE_E_NO_PROTECTORS_TO_TEST
2150694971 (0x8031003B)
找不到类型为“TPM”、“TPM 和 PIN”、“TPM 和 PIN 和启动密钥”、“TPM 和启动密钥”或“外部密钥”的密钥保护程序。 硬件测试仅涉及以前的密钥保护程序。
如果仍要运行硬件测试,则必须使用以下方法之一为卷指定密钥保护程序:
FVE_E_NOT_DECRYPTED
2150694969 (0x80310039)
卷已部分或完全加密。
硬件测试在加密发生之前应用。 如果仍要运行测试,请先使用 Decrypt 方法,然后使用以下方法之一添加密钥保护程序:
FVE_E_NOT_OS_VOLUME
2150694952 (0x80310028)
该卷是数据卷。
硬件测试仅适用于可以启动操作系统的卷。 在当前启动的操作系统卷上运行此方法。
FVE_E_POLICY_PASSWORD_REQUIRED
2150694956 (0x8031002C)
未指定“数字密码”类型的密钥保护程序。 组策略需要备份恢复信息以Active Directory 域服务。 若要添加至少一个该类型的密钥保护程序,请使用 ProtectKeyWithNumericalPassword 方法。

 

备注

如果根据 Windows 7 和 Windows Vista 企业版 定义) 不使用第二个可选参数 (此方法,该方法将始终启动完全模式转换,以保持向后兼容行为。 这样,在 Windows 8 和 Windows Server 2012 中添加了第二个可选参数,就不会破坏现有应用程序和脚本的安全预期。

Encrypt 方法不同,此方法执行以下操作:

  • 测试 TPM 是否能够解锁卷(如果存在与 TPM 相关的密钥保护程序)。
  • 测试计算机是否可以在启动期间读取包含外部密钥文件的 U 盘,以及卷是否将由外部密钥解锁 (包括启动密钥) 。
  • 需要重启计算机才能运行硬件测试。
  • 仅当硬件测试成功时,才开始加密。
  • 不能在数据卷、部分或完全加密卷上使用,也不能用于恢复加密。

在运行此方法之前,请使用以下方法来创建相关的密钥保护程序:

运行此方法后,请执行以下附加步骤:

  1. 将包含外部密钥文件的 U 盘插入计算机。 仅当卷具有类型为“外部密钥”或“TPM 和启动密钥”的密钥保护器时,此步骤才适用。
  2. 重新启动计算机。

重启计算机时,硬件测试会自动运行。

如果硬件测试成功,则开始加密。 否则,请尝试解决任何硬件故障。 重启计算机后运行 GetHardwareTestStatus 以获取测试结果。

托管对象格式 (MOF) 文件包含 Windows Management Instrumentation (WMI) 类的定义。 MOF 文件未作为 Windows SDK 的一部分安装。 使用 服务器管理器添加关联角色时,它们安装在服务器上。 有关 MOF 文件的详细信息,请参阅 托管对象格式 (MOF)

要求

要求
最低受支持的客户端
Windows Vista 企业版,Windows Vista 旗舰版 [仅限桌面应用]
最低受支持的服务器
Windows Server 2008 [仅限桌面应用]
命名空间
Root\CIMV2\Security\MicrosoftVolumeEncryption
MOF
Win32_encryptablevolume.mof

另请参阅

Win32_EncryptableVolume