共用方式為


BitLocker 設定:已知問題

本文說明影響 BitLocker 組態和一般功能的常見問題。 本文也提供解決這些問題的指引。

Windows 10 和 Windows 11 中的 BitLocker 加密速度較慢

BitLocker 會在背景中執行,以加密磁碟驅動器。 不過,在 Windows 11 和 Windows 10 中,BitLocker 對於要求資源比舊版 Windows 更不積極。 此行為可減少 BitLocker 會影響電腦效能的機會。

為了彌補這些變更,BitLocker 會使用名為 Encrypt-On-Write 的轉換模型。 此模型可確保一旦啟用 BitLocker,任何新的磁碟寫入都會加密。 此行為會在所有用戶端版本和任何內部磁碟驅動器上發生。

重要

為了保留回溯相容性,BitLocker 會使用先前的轉換模型來加密卸載式磁碟驅動器。

使用新轉換模型的優點

使用先前的轉換模型,在 BitLocker 轉換完成 100% 之前,內部磁碟驅動器無法視為受保護且符合數據保護標準。 在程式完成之前,加密開始之前磁碟驅動器上存在的數據,也就是可能遭到入侵的數據,仍然可以在沒有加密的情況下讀取和寫入。 因此,若要將數據視為受保護且符合數據保護標準,加密程序必須在敏感數據儲存在磁碟驅動器上之前完成。 視磁碟驅動器的大小而定,此延遲可能相當長。

藉由使用新的轉換模型,只要開啟 BitLocker,敏感數據就可以儲存在磁碟驅動器上。 加密程式不需要先完成,加密不會對效能造成負面影響。 取捨是,預先存在的數據的加密程式需要更多時間。

其他 BitLocker 增強功能

在 Windows 7 之後發行的 Windows 版本中,其他幾個 BitLocker 區域已改善:

  • 新的加密演算法 XTS-AES - 在 Windows 10 1511 版中新增,此演算法會針對依賴操作加密文字來造成純文本可預測變更的加密數據類別,提供額外的保護。

    根據預設,此演算法符合聯邦資訊處理標準(FIPS)。 FIPS 是 美國 政府標準,可提供實作密碼編譯軟體的基準。

  • 改善的系統管理功能。 您可以使用下列介面,在電腦或其他裝置上管理 BitLocker:

    • BitLocker 精靈
    • manage-bde.exe
    • 群組原則物件 (GPO)
    • 行動 裝置管理 (MDM) 原則
    • Windows PowerShell
    • Windows 管理介面 (WMI)
  • 與 Microsoft Entra ID 整合 (Microsoft Entra ID) - BitLocker 可以將復原資訊儲存在 Microsoft Entra ID 中,讓復原更容易復原。

  • 直接記憶體存取 (DMA) 埠保護 - 藉由使用 MDM 原則來管理 BitLocker,裝置的 DMA 埠可以在啟動期間封鎖保護裝置的安全。

  • BitLocker 網路解除鎖定 - 如果已啟用 BitLocker 的桌面電腦或伺服器電腦連線到網域環境中的有線公司網路,其操作系統磁碟區可以在系統重新啟動期間自動解除鎖定。

  • 支援加密硬碟 - 加密硬碟是硬體層級自我加密並允許完整磁碟硬體加密的新硬碟類別。 透過採用該工作負載,加密硬碟會增加 BitLocker 效能,並減少 CPU 使用量和耗電量。

  • 支援 HDD/SSD 混合式磁碟 類別 - BitLocker 可以將使用小型 SSD 作為 HDD 前方非揮發性快取的磁碟加密,例如 Intel 快速儲存技術。

Hyper-V 第 2 代 VM:在 BitLocker 加密之後無法存取磁碟區

試想以下情況:

  1. BitLocker 會開啟在 Hyper-V 上執行的第 2 代虛擬機器 (VM)。

  2. 數據會在加密時新增至數據磁碟。

  3. VM 已重新啟動,並觀察到下列行為:

    • 系統磁碟區未加密。

    • 無法存取加密的磁碟區,計算機會將磁碟區的檔案系統 列為未知

    • 會顯示類似下列訊息的訊息:

      您需要先將磁碟格式化為 <drive_letter:> 磁碟驅動器,才能使用它

Hyper-V 第 2 代 VM 上的 BitLocker 加密之後無法存取磁碟區的原因

發生此問題的原因是 VM 上安裝第三方篩選驅動程式 Stcvsm.sys (從 StorageCraft)。

在 Hyper-V 第 2 代 VM 上的 BitLocker 加密之後無法存取磁碟區的解決方案

若要解決此問題,請移除第三方軟體。

使用 BitLocker 加密磁碟的虛擬化域控制器,生產快照集會失敗

試想以下情況:

Windows Server 2019 或 2016 Hyper-V 伺服器裝載設定為 Windows 域控制器的 VM(來賓)。 在域控制器客體 VM 上,BitLocker 已加密儲存 Active Directory 資料庫和記錄檔的磁碟。 嘗試域控制器客體 VM 的「生產快照集」時,磁碟區快照集 (VSS) 服務無法正確處理備份。

不論環境中發生下列任何變化,都會發生此問題:

  • 域控制器磁碟區如何解除鎖定。
  • VM 是第 1 代或第 2 代。
  • 客體操作系統是 Windows Server 2019、2016 或 2012 R2。

在客體 VM 域控制器 Windows Logs> 應用程式 事件檢視器 記錄檔中,VSS 事件來源會記錄事件標識碼 8229:

標識碼:8229
層級:警告
來源:VSS
訊息:VSS 寫入器已拒絕發生錯誤0x800423f4的事件。 寫入器發生非暫時性錯誤。 如果重試備份程式,錯誤可能會重新發生。

處理事件時寫入器元件對寫入器元件所做的變更,將無法供要求者使用。

檢查事件記錄檔中裝載 VSS 寫入器的應用程式的相關事件。

作業:
PostSnapshot 事件

內容:
執行內容:寫入器
寫入器類別標識符: {b2014c9e-8711-4c5c-a5a9-3cf38448484757}
寫入器名稱:NTDS
寫入器實例標識符: {d170b355-a523-47ba-a5c8-732244f70e75}
命令行:C:\Windows\system32\lsass.exe

進程標識碼:680

在客體 VM 域控制器應用程式和服務>記錄目錄服務 事件檢視器 記錄檔中,記錄的事件類似下列事件:

錯誤 Microsoft-Windows-ActiveDirectory_DomainService 1168
內部處理內部錯誤:發生 Active Directory 網域服務 錯誤。

其他資料
錯誤值 (十進位): -1022

錯誤值 (十六進位):fffffc02

內部標識碼:160207d9

注意

此事件的內部識別碼可能會根據操作系統版本和修補程式層級而有所不同。

發生此問題時,執行命令時vssadmin.exe list writers,Active Directory 網域服務 (NTDS) VSS 寫入器會顯示下列錯誤:

Writer name: 'NTDS'
 Writer Id: {b2014c9e-8711-4c5c-a5a9-3cf384484757}
 Writer Instance Id: {08321e53-4032-44dc-9b03-7a1a15ad3eb8}
 State: [11] Failed
 Last error: Non-retryable error

此外,在 VM 重新啟動之前,無法備份這些 VM。

使用 BitLocker 加密磁碟的虛擬化域控制器發生生產快照集失敗的原因

VSS 建立磁碟區的快照集之後,VSS 寫入器會採取「快照集後」動作。 從主機伺服器起始「生產快照集」時,Hyper-V 會嘗試掛接快照集磁碟區。 不過,它無法解除鎖定磁碟區以進行未加密的存取。 Hyper-V 伺服器上的 BitLocker 無法辨識磁碟區。 因此,存取嘗試失敗,然後快照集作業失敗。

這是依照設計的行為。

使用 BitLocker 加密磁碟之虛擬化域控制器的生產快照集因應措施失敗

執行虛擬化域控制器備份和還原的支援方式,是在客體操作系統中執行 Windows Server 備份

如果需要擷取虛擬域控制器的生產快照集,在啟動生產快照集之前,可以在客體操作系統中暫停 BitLocker。 不過,不建議使用此方法。

如需備份虛擬化域控制器的詳細資訊和建議,請參閱 使用 Hyper-V 將域控制器虛擬化:虛擬化域控制器的備份和還原考慮

其他相關資訊

當 VSS NTDS 寫入器要求存取加密的磁碟驅動器時,Local Security Authority Subsystem Service (LSASS) 會產生類似下列錯誤的錯誤專案:

\# for hex 0xc0210000 / decimal -1071579136
STATUS\_FVE\_LOCKED\_VOLUME ntstatus.h
\# This volume is locked by BitLocker Drive Encryption.

此作業會產生下列呼叫堆疊:

\# Child-SP RetAddr Call Site
 00 00000086\`b357a800 00007ffc\`ea6e7a4c KERNELBASE\!FindFirstFileExW+0x1ba \[d:\\rs1\\minkernel\\kernelbase\\filefind.c @ 872\]
 01 00000086\`b357abd0 00007ffc\`e824accb KERNELBASE\!FindFirstFileW+0x1c \[d:\\rs1\\minkernel\\kernelbase\\filefind.c @ 208\]
 02 00000086\`b357ac10 00007ffc\`e824afa1 ESENT\!COSFileFind::ErrInit+0x10b \[d:\\rs1\\onecore\\ds\\esent\\src\\os\\osfs.cxx @ 2476\]
 03 00000086\`b357b700 00007ffc\`e827bf02 ESENT\!COSFileSystem::ErrFileFind+0xa1 \[d:\\rs1\\onecore\\ds\\esent\\src\\os\\osfs.cxx @ 1443\]
 04 00000086\`b357b960 00007ffc\`e82882a9 ESENT\!JetGetDatabaseFileInfoEx+0xa2 \[d:\\rs1\\onecore\\ds\\esent\\src\\ese\\jetapi.cxx @ 11503\]
 05 00000086\`b357c260 00007ffc\`e8288166 ESENT\!JetGetDatabaseFileInfoExA+0x59 \[d:\\rs1\\onecore\\ds\\esent\\src\\ese\\jetapi.cxx @ 11759\]
 06 00000086\`b357c390 00007ffc\`e84c64fb ESENT\!JetGetDatabaseFileInfoA+0x46 \[d:\\rs1\\onecore\\ds\\esent\\src\\ese\\jetapi.cxx @ 12076\]
 07 00000086\`b357c3f0 00007ffc\`e84c5f23 ntdsbsrv\!CVssJetWriterLocal::RecoverJetDB+0x12f \[d:\\rs1\\ds\\ds\\src\\jetback\\snapshot.cxx @ 2009\]
 08 00000086\`b357c710 00007ffc\`e80339e0 ntdsbsrv\!CVssJetWriterLocal::OnPostSnapshot+0x293 \[d:\\rs1\\ds\\ds\\src\\jetback\\snapshot.cxx @ 2190\]
 09 00000086\`b357cad0 00007ffc\`e801fe6d VSSAPI\!CVssIJetWriter::OnPostSnapshot+0x300 \[d:\\rs1\\base\\stor\\vss\\modules\\jetwriter\\ijetwriter.cpp @ 1704\]
 0a 00000086\`b357ccc0 00007ffc\`e8022193 VSSAPI\!CVssWriterImpl::OnPostSnapshotGuard+0x1d \[d:\\rs1\\base\\stor\\vss\\modules\\vswriter\\vswrtimp.cpp @ 5228\]
 0b 00000086\`b357ccf0 00007ffc\`e80214f0 VSSAPI\!CVssWriterImpl::PostSnapshotInternal+0xc3b \[d:\\rs1\\base\\stor\\vss\\modules\\vswriter\\vswrtimp.cpp @ 3552\]