Win32_EncryptableVolume 类的 ProtectKeyWithTPMAndStartupKey 方法
Win32_EncryptableVolume 类的 ProtectKeyWithTPMAndStartupKey 方法通过使用计算机上的受信任的平台模块 (TPM) 安全硬件(如果可用)保护卷的加密密钥,并在启动时必须提供给计算机的外部密钥进行增强。
通过 TPM 进行验证和包含外部密钥的 USB 内存设备的输入都需要访问卷的加密密钥并解锁卷内容。 使用 SaveExternalKeyToFile 方法将此外部密钥保存到 USB 内存设备上的文件,以用作启动密钥。
此方法仅适用于包含当前正在运行的操作系统的卷。
为卷创建类型为“TPM 和启动密钥”的密钥保护程序(如果尚不存在)。
语法
uint32 ProtectKeyWithTPMAndStartupKey(
[in, optional] string FriendlyName,
[in, optional] uint8 PlatformValidationProfile[],
[in, optional] uint8 ExternalKey[],
[out] string VolumeKeyProtectorID
);
参数
-
FriendlyName [in, optional]
-
类型: 字符串
此密钥保护程序的用户分配的字符串标识符。 如果未指定此参数,则使用空白值。
-
PlatformValidationProfile [in, optional]
-
类型: uint8[]
一个整数数组,指定计算机的受信任平台模块 (TPM) 安全硬件如何保护磁盘卷的加密密钥。
平台验证配置文件由一组平台配置寄存器 (PCR) 索引(包括 0 到 23)组成。 参数中的重复值将被忽略。 每个 PCR 索引都与操作系统启动时运行的服务相关联。 每次计算机启动时,TPM 都会检查平台验证配置文件中指定的服务未更改。 如果在 BitLocker 驱动器加密 (BDE) 保护保持打开状态时,这些服务中的任何一项发生更改,TPM 将不会释放加密密钥来解锁磁盘卷,并且计算机将进入恢复模式。
如果在启用相应的组策略设置时指定此参数,则它必须与组策略设置匹配。
如果未指定此参数,则使用默认值 0、2、4、5、8、9、10 和 11。 默认平台验证配置文件保护加密密钥,防止对以下元素进行更改:
- 核心度量信任根 (CRTM)
- BIOS
- 平台扩展 (PCR 0)
- 选项 ROM Code (PCR 2)
- 主启动记录 (MBR) Code (PCR 4)
- 主启动记录 (MBR) 分区表 (PCR 5)
- NTFS 启动扇区 (PCR 8)
- NTFS 启动块 (PCR 9)
- 启动管理器 (PCR 10)
- BitLocker 访问控制 (PCR 11)
为了保护计算机的安全性,建议使用默认配置文件。 若要防止早期启动配置更改,请使用 PCR 0、1、2、3、4、5、8、9、10、11 的配置文件。 统一可扩展固件接口 (基于 UEFI) 的计算机默认不使用 PCR 5。
从默认配置文件更改会影响计算机的安全性和可管理性。 BitLocker 对平台修改 (恶意或授权) 的敏感度会分别根据 PCR 的包含或排除而增加或减少。 若要启用 BitLocker 保护,平台验证配置文件必须包含 PCR 11。
值 含义 - 0
度量的核心信任根 (CRTM) 、BIOS 和平台扩展 - 1
平台和主板配置和数据 - 2
选项 ROM 代码 - 3
选项 ROM 配置和数据 - 4
主启动记录 (MBR) 代码 - 5
主启动记录 (MBR) 分区表 - 6
状态转换和唤醒事件 - 7
计算机Manufacturer-Specific - 8
NTFS 启动扇区 - 9
NTFS 启动块 - 10
启动管理器 - 11
BitLocker 访问控制 - 12
定义供静态操作系统使用 - 13
定义供静态操作系统使用 - 14
定义供静态操作系统使用 - 15
定义供静态操作系统使用 - 16
用于调试 - 17
动态 CRTM - 18
平台定义 - 19
由受信任的操作系统使用 - 20
由受信任的操作系统使用 - 21
由受信任的操作系统使用 - 22
由受信任的操作系统使用 - 23
应用程序支持 -
ExternalKey [in, optional]
-
类型: uint8[]
字节数组,指定计算机启动时用于解锁卷的 256 位外部密钥。
如果未指定外部键,则随机生成一个。 使用 GetKeyProtectorExternalKey 方法获取随机生成的密钥。
-
VolumeKeyProtectorID [out]
-
类型: 字符串
一个字符串,它是与创建的密钥保护程序关联的唯一标识符,可用于管理密钥保护程序。
如果驱动器支持硬件加密,并且 BitLocker 尚未获取带所有权,则 ID 字符串设置为“BitLocker”,并将密钥保护程序写入每个带元数据。
返回值
类型: uint32
此方法返回以下代码之一,如果失败,则返回另一个错误代码。
返回代码/值 | 说明 |
---|---|
|
方法成功。 |
|
卷已锁定。 |
|
在此计算机上找不到兼容的 TPM。 |
|
TPM 无法保护卷的加密密钥,因为卷不包含当前运行的操作系统。 |
|
提供了 PlatformValidationProfile 参数,但其值不在已知范围内,或者与当前生效的 组策略 设置不匹配。 提供了 ExternalKey 参数,但不是大小为 32 的数组。 |
|
在此计算机中找到可启动 CD/DVD。 删除 CD/DVD 并重新启动计算机。 |
|
此类型的密钥保护程序已存在。 |
安全注意事项
为了保护计算机的安全性,建议使用默认配置文件。 为了防止早期启动代码更改,请使用 PCR 0、2、4、5、8、9、10 和 11 的配置文件。 若要防止早期启动配置更改,请使用 PCR 0、1、2、3、4、5、8、9、10、11 的配置文件。
从默认配置文件更改会影响计算机的安全性或可用性。
备注
对于一个卷,最多可以存在一个类型为“TPM 和启动密钥”的密钥保护程序。 如果要更改现有“TPM 加启动密钥”密钥保护程序使用的显示名称或平台验证配置文件,必须先删除现有的密钥保护程序,然后调用 ProtectKeyWithTPMAndStartupKey 以创建新的密钥保护程序。 在无法获取卷加密密钥访问权限的恢复方案中,应指定其他密钥保护程序来解锁卷;例如,当 TPM 无法成功验证平台验证配置文件或包含外部密钥的 USB 内存丢失时。
使用 ProtectKeyWithExternalKey 或 ProtectKeyWithNumericalPassword 创建一个或多个密钥保护程序,用于恢复本来锁定的卷。
虽然可以同时具有类型为“TPM”的密钥保护器和另一种类型为“TPM 和启动密钥”的密钥保护程序,但“TPM”密钥保护程序类型的存在会抵消其他基于 TPM 的密钥保护程序的影响。
托管对象格式 (MOF) 文件包含 Windows Management Instrumentation (WMI) 类的定义。 MOF 文件未作为 Windows SDK 的一部分安装。 使用 服务器管理器添加关联角色时,它们安装在服务器上。 有关 MOF 文件的详细信息,请参阅 托管对象格式 (MOF) 。
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows Vista 企业版,Windows Vista 旗舰版 [仅限桌面应用] |
最低受支持的服务器 |
Windows Server 2008 [仅限桌面应用] |
命名空间 |
Root\CIMV2\Security\MicrosoftVolumeEncryption |
MOF |
|
另请参阅