Share via


protectKeyWithTPMAndPINAndStartupKey 類別的 Win32_EncryptableVolume 方法

Win32_EncryptableVolume類別的ProtectKeyWithTPMAndPINAndStartupKey方法會使用電腦上的信賴平臺模組 (TPM) 來保護磁片區的加密金鑰,如果有的話,請透過使用者指定的個人識別碼 (PIN) ,以及必須在啟動時向電腦呈現的外部金鑰來增強。

需要有三個驗證因素,才能解除鎖定磁片區的加密內容:

  1. TPM 的驗證
  2. 4 到 20 位數 PIN 的輸入;如果已啟用「允許啟動的增強型 PIN」群組原則,則為 4 到 20 個字母、符號、空格或數位
  3. 包含外部金鑰的 USB 記憶體裝置輸入

使用 SaveExternalKeyToFile 方法,將此外部金鑰儲存至 USB 記憶體裝置上的檔案,以作為啟動金鑰使用。 這個方法僅適用于作業系統磁片區。 系統會建立類型為 「TPM And PIN And Startup Key」 的金鑰保護裝置。

語法

uint32 ProtectKeyWithTPMAndPINAndStartupKey(
  [in, optional] string FriendlyName,
  [in, optional] uint8  PlatformValidationProfile,
  [in]           string PIN,
  [in, optional] uint8  ExternalKey[],
  [out]          string VolumeKeyProtectorID
);

參數

FriendlyName [in, optional]

類型: 字串

標記此金鑰保護裝置的字串。 如果未指定此參數,則會使用空白值。

PlatformValidationProfile [in, optional]

類型: uint8

整數陣列,指定電腦的 TPM 如何保護磁片區的加密金鑰。 平臺驗證設定檔包含一組平臺設定暫存器 () 索引,範圍從 0 到 23,包含。 會忽略 參數中的重複值。 每一個PCS 索引都與作業系統啟動時所執行的服務相關聯。 每次電腦啟動時,TPM 都會檢查您在平臺驗證設定檔中指定的服務是否已變更。 如果任何服務在 BitLocker 保護保持開啟時變更,TPM 將不會釋放加密金鑰來解除鎖定磁片區,而且電腦會進入復原模式。

如果未指定此參數,則會使用預設索引 0、2、4、5、8、9、10 和 11。 預設平臺驗證設定檔會保護加密金鑰,以防止對測量核心根目錄的變更 (CRTM) , BIOS 和 Platform Extensions ( () 、OPTION ROM Code ( () 、Master Boot Record (MBR) Code () 、Master Boot Record (MBR) PARTITION Table () ) , NTFS 開機磁區 ( () 、NTFS 開機區塊 () 、開機管理員 () ,以及 BitLocker 存取控制 (存取控制 () 。 整合可擴展韌體介面 (UEFI) 型電腦預設不會使用) 型電腦。

建議使用預設平臺驗證設定檔。 如需防止早期啟動設定變更的額外保護,請使用 PCR 0、1、2、3、4、5、8、9、10、11 的設定檔。

變更預設設定檔會影響電腦的安全性和管理性。 BitLocker 對平臺修改的敏感度 (惡意或授權) 會根據 PCR 的包含或排除,分別增加或減少。 若要啟用 BitLocker 保護,平臺驗證設定檔必須包含版面配置 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
應用程式支援

 

PIN [in]

類型: 字串

包含 4 到 20 位數的個人識別碼 (PIN) ,或者,如果已啟用「允許啟動的增強 PIN」群組原則,則為 4 和 20 個字母、符號、空格或數位。 此字串必須在啟動時提供給電腦。

ExternalKey [in, optional]

類型: uint8[]

位元組陣列,指定電腦啟動時用來解除鎖定磁片區的 256 位外部金鑰。 將此參數保留空白,以隨機產生外部金鑰。 使用 GetKeyProtectorExternalKey 方法來取得隨機產生的金鑰。

VolumeKeyProtectorID [out]

類型: 字串

用來管理加密磁片區金鑰保護裝置的已更新唯一字串識別碼。

如果磁片磁碟機支援硬體加密,且 BitLocker 尚未取得訊號範圍擁有權,識別碼字串會設定為 「BitLocker」,且金鑰保護裝置會寫入每個訊號範圍中繼資料。

傳回值

類型: uint32

此方法會在失敗時傳回下列其中一個代碼或另一個錯誤碼。

傳回碼/值 描述
S_OK
0 (0x0)
此方法成功。
E_INVALIDARG
2147942487 (0x80070057)
提供PlatformValidationProfile參數,但其值不在已知範圍內,或不符合目前作用中的群組原則設定。
提供 ExternalKey 參數,但不是大小為 32 的陣列。
FVE_E_BOOTABLE_CDDVD
2150694960 (0x80310030)
在此電腦中找到可開機的 CD/DVD。 移除 CD/DVD 並重新啟動電腦。
FVE_E_FOREIGN_VOLUME
2150694947 (0x80310023)
TPM 無法保護磁片區的加密金鑰,因為磁片區不包含目前正在執行的作業系統。
FVE_E_INVALID_PIN_CHARS
2150695066 (0x8031009A)
NewPIN參數包含不正確字元。 停用[允許啟動的增強型 PIN] 群組原則時,僅支援數位。
FVE_E_LOCKED_VOLUME
2150694912 (0x80310000)
磁片區已鎖定。
FVE_E_POLICY_INVALID_PIN_LENGTH
2150695016 (0x80310068)
提供的NewPIN參數長度超過 20 個字元、短于 4 個字元,或小於群組原則所指定的最小長度。
FVE_E_PROTECTOR_EXISTS
2150694961 (0x80310031)
此類型的金鑰保護裝置已經存在。
TBS_E_SERVICE_NOT_RUNNING
2150121480 (0x80284008)
此電腦上找不到相容的 TPM。

 

備註

「TPM 和 PIN 和啟動金鑰」類型的最多一個金鑰保護裝置可以隨時存在磁片區。 如果您想要變更現有「TPM 和 PIN 碼和啟動金鑰」金鑰保護裝置所使用的顯示名稱或平臺驗證設定檔,您必須先移除現有的金鑰保護裝置,然後呼叫 ProtectKeyWithTPMAndPINAndStartupKey 來建立新的保護裝置。

在無法取得磁片區加密金鑰存取權的復原案例中,應指定其他金鑰保護裝置來解除鎖定磁片區;例如,當 TPM 無法成功驗證平臺驗證設定檔或 PIN 遺失時。 使用 ProtectKeyWithExternalKeyProtectKeyWithNumericalPassword 來建立一或多個金鑰保護裝置,以復原其他鎖定的磁片區。

雖然可以同時擁有類型為 「TPM」 的金鑰保護裝置,以及另一種類型 「TPM 和 PIN 和啟動金鑰」,但存在 「TPM」 金鑰保護裝置類型會否定其他 TPM 型金鑰保護裝置的效果。

Managed 物件格式 (MOF) 檔案包含 Windows Management Instrumentation (WMI) 類別的定義。 MOF 檔案不會安裝為 Windows SDK 的一部分。 當您使用 伺服器管理員 新增相關聯的角色時,它們會安裝在伺服器上。 如需 MOF 檔案的詳細資訊,請參閱 Managed 物件格式 (MOF)

規格需求

需求
最低支援的用戶端
Windows Vista Enterprise 搭配 SP1、Windows Vista Ultimate with SP1 [僅限傳統型應用程式]
最低支援的伺服器
Windows Server 2008 [僅限傳統型應用程式]
命名空間
Root\CIMV2\Security\MicrosoftVolumeEncryption
MOF
Win32_encryptablevolume.mof

另請參閱

Win32_EncryptableVolume