針對 Azure 應用程式閘道中已停用的接聽程式進行疑難排解

總結

本文說明 Azure 應用程式閘道 中身障聆聽者的概念、其發生原因,以及識別與解決的步驟。

你可以參考客戶 Azure Key Vault 資源中 Application Gateway 監聽者的 SSL/TLS 憑證。 您的應用閘道必須始終能存取這些資源(及其憑證物件),以確保傳輸層安全(TLS)終止功能的順暢運作及閘道資源的整體健康狀況。

在進行變更或撤銷對 金鑰保存庫 資源的存取時,請考慮對 Application Gateway 資源的任何影響。 如果應用程式閘道無法存取相關的金鑰庫或找不到其憑證物件,它會自動將該監聽器置於停用狀態。

備註

此動作僅在設定錯誤時觸發。

任何客戶設定錯誤(例如憑證刪除或停用,或禁止應用程式閘道透過 金鑰保存庫 防火牆或權限存取)都可能導致基於 key vault 的 HTTPS 監聽器被禁用。 瞬態連線問題不會影響聽眾。

已停用的接聽程式不會影響您 Application Gateway 上其他正常運作接聽程式的流量。 例如,直接上傳 .pfx 憑證檔案到應用閘道資源的 HTTP 監聽器或 HTTPS 監聽器,從未被禁用。

以下示意圖顯示因 金鑰保存庫 存取問題而受影響的監聽者。

一張顯示受影響聽眾的插圖。

定期檢查及其對聽眾的影響

了解應用程式閘道定期檢查的行為及其對金鑰庫監聽器狀態的潛在影響,能幫助你預防或更快解決此類事件。

定期檢查 金鑰保存庫 的運作方式

  1. 應用閘道實例會定期輪詢金鑰庫資源以取得新的憑證版本。
  2. 在此活動期間,若實例偵測到 金鑰保存庫 資源存取受損或憑證物件遺失,該 key vault 相關的監聽者將進入停用狀態。 這些實例會在 60 秒內針對接聽器更新為停用狀態,以提供一致的資料平面行為。
  3. 客戶解決問題後,相同的每四小時一次的週期性輪詢會確認是否可存取 金鑰保存庫 憑證物件,並自動重新啟用該閘道上所有執行個體的接聽程式。

識別身心障礙聽者

  • 如果用戶端向您 Application Gateway 上已停用的接聽程式發出任何要求,就會看到「ERR_SSL_UNRECOGNIZED_NAME_ALERT」錯誤,如下圖所示。

客戶端錯誤截圖ERR_SSL_UNRECOGNIZED_NAME_ALERT。

  1. 您可以透過查看應用閘道的 資源健康狀態 頁面(如下圖所示)來確認用戶端錯誤是否源自閘道上的障礙監聽器。

Application Gateway 資源健康狀態 頁面上由使用者驅動的資源健康狀態事件螢幕擷取畫面。

解決 金鑰保存庫 設定錯誤

你可以透過造訪帳戶中的 Azure Advisor 推薦頁面,縮小確切原因並找到解決方法。 若要這樣做,請遵循下列步驟:

  1. 登入 Azure 入口網站。
  2. 選擇 顧問。
  3. 從選單中選擇 「營運卓越 」類別。
  4. 找到標題為 Resolve Azure Key Vault 問題的建議,適用於你的應用程式閘道(只有當你的閘道器遇到此問題時才顯示)。 確定已選取正確的訂用帳戶。
  5. 點選它即可查看錯誤細節及相關的 金鑰保存庫 資源,以及解決你問題的故障排除指南。

備註

當應用閘道資源偵測到根本問題並解決時,禁用監聽器會自動啟用。 此檢查每四小時進行一次。 你可以透過對應用程式閘道做任何小的修改(例如HTTP 設定、 資源標籤等)來加速處理。 此變更強制對 金鑰保存庫 進行檢定。

參考資料

在 Azure 應用程式閘道 中故障排除金鑰保管庫錯誤