企業 IT 系統管理員和安全性軟體廠商應遵循這些最佳做法,以確保安全性工具不會封鎖 WebView2 應用程式功能或導致 WebView2 應用程式當機。 使用這些做法和程序來設定環境和安全性工具,以避免中斷 WebView2 的多程序架構。
詳細內容:
- 要設定的安全性工具
- 視需要更新企業安全性原則
- 將 WebView2 執行階段與應用程式的主機可執行檔加入允許清單
- 保留預設存取控制清單 (在執行階段資料夾上) 的 ACL
- 在執行階段資料夾上保留低完整性等級 (LowIL)
- 保留預設存取控制清單 (應用程式使用者資料資料夾中的 ACL) (UDF)
- 授與寫入 UDF) (使用者資料資料夾的權限
- 允許執行階段資料夾存取權、子流程和子流程建立
- 請勿將 DLL 插入 WebView2 處理程序
- 避免廣泛的全域排除項目
- 信任內部 Proxy 憑證授權單位 (CA) ,並允許基本登入或內容傳遞網路 (CDN) 端點
- 依簽章信任 WebView2 執行階段
- 請勿修改 Windows 元件從 C:\Windows\System32 載入的 WebView2 執行階段檔案
- 將傳輸層安全性對齊 (TLS) 檢查和 Proxy 設定
- 允許 Evergreen WebView2 執行階段的更新
- 不套用 Edge 瀏覽器專用群組原則
- 用於檢查症狀和原因的工具
- 工具適用性
- 解決效能問題
- 為什麼 WebView2 會出現在企業工作負載中
- 請參閱
要設定的安全性工具
要適當設定的安全性工具包括:
- 防毒軟體 (AV) 工具。
- 資料外洩防護 (DLP) 工具。
- 端點偵測及回應 (EDR) 工具。
企業安全性工具也包括:
- 傳輸層安全性 (TLS) 檢查。
企業設定問題的徵狀
企業安全性工具如果未遵循下列最佳做法,可能會透過下列方式中斷 WebView2 的多處理序架構:
- 封鎖子處理程序。
- Tightening folder 存取控制 Lists (ACL) 。
- 插入動態連結程式庫 (DLL) 。
發生這類中斷時,WebView2 託管的體驗可能會顯示空白畫面、凍結或無法初始化。
請參閱:
- Microsoft Edge 開發人員文件中的 WebView2 應用程式程序模型。
視需要更新企業安全性原則
WebView2 遵守所有企業安全性原則。
如果任何工具或原則不允許載入某些 WebView2 DLL,IT 管理員需要更新企業安全性原則。
WebView2 不會實作應用程式特定的邏輯。
將 WebView2 執行階段與應用程式的主機可執行檔加入允許清單
將 WebView2 執行階段 () msedgewebview2.exe 和應用程式的主機可執行檔加入允許清單。
請參閱:
- 防止防毒軟體和 DLP 工具封鎖或當機 Microsoft Teams - 在 Microsoft Teams 疑難排解中。
偏好發行者規則。
請參閱:
- 了解 AppLocker 中的發行者規則條件 - 在適用於 Windows) 的 Windows 安全性 (應用程式控制中。
執行階段初始化已遭封鎖
問題:
可能發生初始化錯誤,例如
E_FAIL。 在此情況下,WebView2 控制項無法初始化,而且應用程式內容永遠不會載入。下列任何工具的執行階段初始化都會遭到封鎖:
WDAC) (Windows Defender 應用程式控制。
AppLocker 拒絕規則;明確封鎖執行的原則。
存取控制 列出 (已收緊至超出預設設定的 ACL 的) ;權限已變得比 OS 預設值更嚴格。
問題
傳輸層安全性 (TLS) 錯誤,例如
ERR_CERT_*。啟用傳輸層安全性 (TLS) 檢查時發生的登入重新導向失敗。
立即初始化錯誤。
沒有子處理程序。
檢視為空白。
解決方案
將 WebView2 執行階段 (msedgewebview2.exe) 和主機可執行檔加入允許清單。
請參閱:
- 防止防毒軟體和 DLP 工具封鎖或當機 Microsoft Teams - 在 Microsoft Teams 疑難排解中。
使用發行者規則。
請參閱:
- 了解 AppLocker 中的發行者規則條件 - 在適用於 Windows) 的 Windows 安全性 (應用程式控制中。
還原預設存取控制清單 (ACL) 。
請參閱:
保留預設存取控制清單 (在執行階段資料夾上) 的 ACL
請勿修改 Windows 在 WebView2 執行階段資料夾上設定的預設存取控制清單 (ACL) 。
如果安全性工具修改 WebView2 Runtime 資料夾上的 ACL,這些沙箱化程式可能會失去讀取和執行 Runtime 二進位檔所需的權限,這可能會導致空白畫面、初始化失敗或當機。
請參閱:
在執行階段資料夾上保留低完整性等級 (LowIL)
請勿修改 WebView2 Runtime 資料夾上的低完整性等級 (LowIL) 設定。 WebView2 會在低完整性層級執行轉譯器程序,以限制其對系統資源的存取。
低完整性層級處理程序 (LowIL) 必須能夠讀取和執行 WebView2 執行階段二進位檔。
低完整性等級 (LowIL) 是一種 Windows 安全性機制,可限制處理程序寫入較高完整性物件的能力,例如大部分使用者設定檔和系統位置) (。 WebView2 轉譯器處理程序會以低 IL 執行,以降低遭入侵程序的影響。
請參閱:
保留預設存取控制清單 (應用程式使用者資料資料夾中的 ACL) (UDF)
請勿修改 Windows 在 UDF) (應用程式使用者資料資料夾上設定的預設存取控制清單 (ACL) 。 修改這些 ACL 可能會使 LowIL 和 AppContainer 處理程序無法正常運作。
AppContainer 是比較嚴格的 Windows 沙箱,會限制處理程序只能存取明確授與的資源。 在支援的作業系統版本中,WebView2 可能會在 之內 AppContainer執行轉譯器程序,以提供額外的隔離。
LowIL/AppContainer必須具備以下權限:
讀取並執行 WebView2 執行階段。
寫入 UDF) (使用者資料資料夾。
WebView2 會在 [低完整性] 層級 (LowIL) 或沙箱內 AppContainer 執行特定的子程式,以限制其存取系統資源。
這些沙箱化程序必須仍能夠:
讀取並執行 WebView2 執行階段二進位檔。
寫入應用程式的使用者資料資料夾 (UDF) 。
如果安全性工具收緊應用程式使用者資料資料夾 (UDF) 上) 存取控制清單 (ACL,沙箱化處理程序可能會失去所需的存取權,這可能會導致空白畫面、初始化失敗或當機。
作業系統 (OS) 所管理的系統位置完全由 Windows 處理,不得修改。
請參閱:
- 管理 Microsoft Edge 開發人員文件中的使用者資料資料夾。
授與寫入 UDF) (使用者資料資料夾的權限
授與寫入權限,以允許 WebView2 應用程式寫入 UDF) (使用者資料資料夾。
這些對 UDF 的寫入可能來自:
每個應用程式控制資料夾存取權 (CFA) 例外。
個別應用程式資料外洩防護 (DLP) 例外。
Web 內容狀態位於應用程式的 [使用者資料] 資料夾 (UDF) 。 Web 內容狀態包括:
- Cookie。
- 快取。
- 本機儲存體。
請參閱:
- 管理 Microsoft Edge 開發人員文件中的使用者資料資料夾。
登入循環;狀態未持久化;設定不會持久化;空白初始頁面
在登入迴圈的情況下,當使用者資料資料夾 (UDF) 寫入遭到封鎖時,狀態不會持久化。
解決方案
允許寫入應用程式的 [使用者資料] 資料夾;使用每個應用程式的受控資料夾存取權 (CFA) 例外或資料外洩防護 (DLP) 例外。
避免將 WebView2 使用者資料資料夾 (UDF) 放在網路共用上。
確保資料外洩防護 (DLP) 原則不會將一般瀏覽器資料 (,例如 Cookie、快取或本機儲存體錯誤分類為外流嘗試) 。 外流 是指未經許可將資料從系統、網路或雲端環境未經授權傳輸到外部目的地。
請參閱:
- 管理 Microsoft Edge 開發人員文件中的使用者資料資料夾。
允許執行階段資料夾存取權、子流程和子流程建立
對象:安全性軟體廠商。
保持 WebView2 執行階段資料夾存取不受限制。
允許子處理程序,而且不要終止它們。 子處理程序包括:
- 轉譯器
- 圖形處理器 (GPU)
- 網路
- Crashpad
保持 WebView2 執行階段子流程建立不受限制;permit Crashpad。
請參閱:
- 處理 WebView2 中的程序相關事件,在 Microsoft Edge 開發人員文件中。
- 損毀傾印 - WebView2Feedback 存放庫
請勿將 DLL 插入 WebView2 處理程序
使用 Microsoft Edge 安全性連接器。
避免動態連結程式庫 (DLL) 注入。
請勿將動態連結程式庫 (DLL) 插入 WebView2 處理程序。 請改用 Microsoft Edge 安全性連接器。
偏好 Microsoft Edge 安全性連接器以防範資料外洩防護 (DLP) 、報告或裝置信任。
動態連結程式庫 (DLL) 插入轉譯器或圖形處理單元 (GPU) 處理程序會中斷 Chromium 的沙箱模型,並且通常會導致轉譯器當機。
安全軟體廠商應該使用支援的 Edge 安全連接器,而不是低階勾點。
請參閱:
當機或凍結
當機或凍結繫結到動態連結程式庫 (DLL) 注入或封鎖的轉譯器、圖形處理單元 (GPU) 或 Crashpad。
請參閱:
- 處理 WebView2 中的程序相關事件,在 Microsoft Edge 開發人員文件中。
- 損毀傾印 - WebView2Feedback 存放庫
內容永遠無法載入
問題:啟動主要程式,但內容從未載入,而且應用程式會凍結。
子處理程序的產生遭到封鎖或掛斷。
解決方案
允許 WebView2 子處理程序:
- 轉譯器。
- 圖形處理器 (GPU) 。
- 網路。
- Crashpad。
這些是 WebView2 具現化的子處理程序。
避免動態連結程式庫 (DLL) 注入。
偏好 Edge 連接器。
請參閱:
- 商務用 Microsoft Edge 安全性連接器
- 處理 WebView2 中的程序相關事件,在 Microsoft Edge 開發人員文件中。
- 損毀傾印 - WebView2Feedback 存放庫
避免廣泛的全域排除項目
啟動速度緩慢
問題:
- 由於深度即時掃描 WebView2 執行階段和 UDF) (使用者資料資料夾,導致啟動速度緩慢。
- 執行瀏覽時出現短暫的白色畫面。
- 積極的即時掃描。
解決方案
設定 WebView2 執行階段二進位檔和使用者資料資料夾的範圍 排除 項目 (UDF) ;避免廣泛排除。
使用 WebView2 執行階段目錄和 UDF) 使用者資料資料夾的範圍排除來調整掃描 (。
避免廣泛的全域排除。
請參閱:
- WebView2 的企業管理
- 管理 Microsoft Edge 開發人員文件中的使用者資料資料夾。
信任內部 Proxy 憑證授權單位 (CA) ,並允許基本登入或內容傳遞網路 (CDN) 端點
將傳輸層安全性 (TLS) 原則與 Chromium 保持一致:
信任內部 Proxy 憑證授權單位 (CA) ;安裝信任的憑證授權單位 (CA) 。
允許基本登入端點或其他必要端點。
允許基本內容傳遞網路 (CDN) 端點。
在 WebView2 Runtime 資料夾上保留預設的存取控制清單 (ACL) 和低完整性等級 (LowIL) 設定。
低完整性層級處理程序 (LowIL) 必須能夠讀取和執行 WebView2 執行階段二進位檔。
請勿修改作業系統在 Runtime 資料夾上設定的預設 ACL。 WebView2 的沙箱化轉譯器處理序會在低完整性層級執行,而且需要這些權限才能正常運作。
依簽章信任 WebView2 執行階段
識別並信任依簽章) 的 WebView2 執行階段 (msedgewebview2.exe ;允許子處理程序。
請勿修改 Windows 元件載入來源的 WebView2 執行階段檔案 C:\Windows\System32
請勿修改、隔離或取代 Windows 元件直接 C:\Windows\System32從中載入的 WebView2 執行階段二進位檔案。
某些 Windows 元件可能會直接從 C:\Windows\System32載入 WebView2 執行階段二進位檔案。 這些二進位檔案由作業系統所擁有。
這些作業系統所擁有的 WebView2 執行階段二進位檔案:
可能不符合傳統型應用程式所使用的 Evergreen WebView2 Runtime 版本。
僅透過 Windows Update 提供服務,而非透過 WebView2 安裝程式。
將傳輸層安全性對齊 (TLS) 檢查和 Proxy 設定
徵狀:
傳輸層安全性 (TLS) 錯誤 (,例如
ERR_CERT_*) 。啟用 TLS 檢查時發生的登入重新導向失敗。
讓傳輸層安全性 (TLS) 檢查和 Proxy 設定符合 Chromium 型瀏覽器需求。
如果您的環境使用 TLS 檢查,請確定作業系統的憑證存放區信任檢查憑證。
防火牆或 Proxy 的 SSL 解密
使用 TLS 檢查的範例之一是由防火牆或 Proxy 進行 SSL 解密。
如果您的環境透過 Proxy 伺服器路由流量,請確保 WebView2 處理序可以透過 Proxy 到達所需的端點。
ERR_CERT_* 錯誤
問題:
ERR_CERT_*錯誤。登入迴圈 (登入迴圈) 。
服務工作者失敗。
網路檢查與傳輸層安全性 (TLS) 檢查不對齊。
解決方案
安裝企業 Proxy 的根憑證授權單位 (CA) ,讓 WebView2 信任截獲的 HTTPS 流量。
確保明確允許 WebView2 應用程式使用的驗證端點和內容傳遞網路 (CDN) 端點。
驗證端點和內容傳遞網路 (CDN) 端點。
請參閱:
允許 Evergreen WebView2 執行階段的更新
請勿封鎖 Evergreen WebView2 執行階段的更新。
允許更新 Evergreen WebView2 Runtime;不要封鎖服務。
Microsoft Edge 服務會更新下列版本化子資料夾:
C:\Program Files (x86)\Microsoft\EdgeWebView\Application\<version>\
請參閱:
- WebView2 的企業管理
- Evergreen 與 WebView2 執行階段的固定版本,請參閱 Microsoft Edge 開發人員文件。
- 發佈您的應用程式和 WebView2 執行階段,請移至 Microsoft Edge 開發人員文件。
應用程式只能搭配較高權限使用
有一個存取控制清單 (ACL) 與完整性等級不相符。
問題:應用程式只能在較高權限下運作。 應用程式在下列環境中失敗:
通用 Windows 平台 (UWP) - 在 Windows 應用程式沙箱內執行的應用程式,且權限受限。
AppContainer - Windows 安全性沙箱,將程序的存取權限限制為僅明確授與資源。
解決方案
保留 WebView2 執行階段目錄的預設 ALL APPLICATION PACKAGES 權限;必須 讀取/執行低完整性層級處理程序 (LowIL) 。
請參閱:
這包括 下的 C:\Program Files (x86)\Microsoft\EdgeWebView\Application\<version>\Evergreen WebView2 Runtime 路徑,其必須保留 ALL APPLICATION PACKAGES 讀取/執行權限。
System32 型 WebView2 執行階段由 Windows 擁有並提供服務。
防毒軟體 (AV) 、端點偵測和回應 (EDR) ,或資料外洩防護 (DLP) 工具不得修改、取代、隔離或清除以 System32 為基礎的 WebView2 執行階段。
System32 型 WebView2 執行階段的預設存取控制清單 (ACL) 必須完全按照出貨時保留。
不套用 Edge 瀏覽器專用群組原則
大部分適用於 Microsoft Edge 的群組原則不會影響 WebView2,而不支援的原則可能會中斷 WebView2 功能。
請勿使用 Microsoft Edge 專用群組原則來影響 WebView2。
用於檢查症狀和原因的工具
IT 系統管理員可以使用標準 Windows 工具來判斷所列徵兆是否由以下原因造成:
- WebView2 遭到封鎖。
- WebView2 無法初始化。
- WebView2 當機。
工作管理員
在主機應用程式下,確認 WebView2 執行階段 (msedgewebview2.exe) 及其子處理程序出現。
子處理程序包括:
- 轉譯器。
- 圖形處理器 (GPU) 。
- 網路。
- Crashpad。
如果沒有出現 WebView2 子處理程序,則會封鎖 WebView2 執行階段或子處理程序產生,因為電腦上已啟用下列其中一項:
WDAC) (Windows Defender 應用程式控制。
端點偵測及回應 (EDR) 。
動態連結程式庫 (DLL) 注入。
如果轉譯器 (或圖形處理單元 (GPU) ) 處理程序短暫出現然後消失,下列情況可能會終止轉譯器 (或圖形處理單元 (GPU) ) 處理程序:
端點偵測及回應 (EDR) Hooking。
防毒軟體 (AV) Hooking。
動態連結程式庫 (DLL) 注入。
空白或白色內嵌視窗
如果有空白或白色的內嵌視窗,請確定 WebView2 處理序存在於 [工作管理員] 中。
請參閱:
- Microsoft Edge 開發人員文件中的 WebView2 應用程式程序模型。
事件檢視器
Windows 記錄 > 應用程式/系統) (事件檢視器。
尋找:
應用程式或 WebView2 初始化失敗。
WDAC) 或 AppLocker 封鎖 執行 事件 (Windows Defender 應用程式控制。
受控資料夾存取權 (CFA) 或資料外洩防護 (DLP) 影響使用者資料資料夾 (UDF) 的 檔案寫入拒絕 事件。
傳輸層安全性 (影響登入流程的 TLS) 、憑證或網路原則失敗。
安全性記錄檔
受控資料夾存取權 (CFA) 區塊。
資料外洩防護 (DLP) 原則區塊。
AppLocker 或應用程式控制拒絕。 這些症狀通常會對應登入迴圈、空白畫面或設定未持續存在。
診斷、當機報告和處理序事件
當機報告會儲存在應用程式的 [使用者資料] 資料夾下, (UDF) 位於 EBWebView\Crashpad\reports\。
使用當機診斷與程序事件一起使用,以分級重複的失敗。
請參閱:
- 處理 WebView2 中的程序相關事件,在 Microsoft Edge 開發人員文件中。
- 損毀傾印 - WebView2Feedback 存放庫
可靠性監視器
識別轉譯器、圖形處理器 (GPU) 或 Crashpad 進程的重複當機。
這些處理序當機與以下各項相關:
凍結問題。
空白螢幕問題。
WebView2 執行時間不穩定。
工具適用性
對象:IT 系統管理員和安全性軟體廠商。
各種類型的應用程式都可以與 WebView2 互動。 以下是對不同形式 WebView2 的適用範圍。
本文適用於下列工具或軟體:
Microsoft Edge WebView2 執行階段 (常青且修正版本) 。
內嵌 WebView2 控制項的 Windows 桌面應用程式。
在 UI 的網頁型部分使用 WebView2 的 Windows 元件。
非Microsoft防毒軟體、端點偵測和回應 (EDR) 、資料外洩防護 (DLP) ,以及可能干擾 WebView2 處理序的 Proxy 或傳輸層安全性 (TLS) 攔截產品。
請參閱:
- Microsoft Edge WebView2 和 Microsoft 365 應用程式 - 使用 Microsoft 365 應用程式的部署指南。
解決效能問題
對象:IT 系統管理員和安全性軟體廠商。
若要使用本節:
IT 系統管理員會使用此資訊來識別 IT 系統管理員在其應用程式中啟動或使用 WebView2 時所看到的問題,並找出造成問題的安全性軟體。
IT 系統管理員會連絡安全性軟體廠商。
安全軟體廠商使用此內容來找出他們需要執行哪些動作以確保 WebView2 未遭到封鎖。
大量掃描或掛接進程可能會減慢啟動和頁面載入時間。
相反地,對 UDF) 的 WebView2 執行階段二進位檔和使用者資料資料夾使用範圍排除 (,而不是選擇廣泛、高風險的停用。
像對待瀏覽器處理程序一樣對待子處理程序;避免終止這類子進程。
子處理程序包括:
- 轉譯器。
- 圖形處理器 (GPU) 。
- 網路。
- Crashpad。
請勿結束 Crashpad 或 Graphics Processing Unit (GPU) 處理程序,因為它們對穩定性和轉譯至關重要。
請參閱:
- WebView2 的企業管理
- 處理 WebView2 中的程序相關事件,在 Microsoft Edge 開發人員文件中。
為什麼 WebView2 會出現在企業工作負載中
對象:IT 系統管理員和安全性軟體廠商。
許多 Microsoft 365 Apps 和 Windows 功能 使用 WebView2 來提供現代化、一致的 UI。
例如,Outlook 功能仰賴 WebView2 Runtime 來運作。
Windows Search 針對其部分 UI 使用 WebView2。
請參閱:
- Microsoft Edge 開發人員文件中的 WebView2 文件。
- Microsoft Edge WebView2 和 Microsoft 365 應用程式 - 使用 Microsoft 365 應用程式的部署指南。
請參閱
Microsoft Edge 開發人員文件:
- WebView2 文件
- 在 WebView2 中處理程序相關的事件
- 常青與修正版本的 WebView2 執行階段
- 發佈您的應用程式和 WebView2 執行階段
- WebView2 應用程式的程序模型
- 管理使用者資料資料夾
Learn.microsoft.com:
- Microsoft Edge WebView2 和 Microsoft 365 應用程式 - 使用 Microsoft 365 應用程式的部署指南。
- 了解 AppLocker 的發行者規則條件 - 在 Windows 安全性 (Windows) 的應用程式控制中。
- 防止防毒軟體和 DLP 工具封鎖或當機 Microsoft Teams - 在 Microsoft Teams 疑難排解中。
外部:
- Microsoft Edge WebView2 - Developer.microsoft.com。
- 損毀傾印 - WebView2Feedback 存放庫