Azure 應用程式閘道是網路流量負載平衡器,可讓您管理 Web 應用程式的流量。 作為網路基礎結構中的重要元件,應用程式網關會處理連入要求,並將其路由傳送至後端服務,因此必須實作適當的安全性措施,以防止威脅,並確保符合組織安全性需求。
本文提供如何最佳保護 Azure 應用程式閘道部署的指引。
本文中的安全性建議會實作零信任原則:「明確驗證」、「使用最低許可權存取」和「假設違規」。 如需完整的 零信任 指引,請參閱 零信任 指引中心。
網路安全性
應用程式閘道的網路安全性涉及控制流量、實作適當的分割,以及保護用戶端與後端服務之間的通訊。
部署專用子網路:將應用閘道器置於虛擬網路內的專用子網路中,以提供網路隔離並支援所需的基礎設施配置。 如需詳細資訊,請參閱應用程式閘道基礎結構設定。
套用網路安全群組:使用網路安全群組(NSG)來依埠、協定、來源 IP 位址或目的 IP 位址限制流量。 建立 NSG 規則,允許必要的用戶端、後端及基礎設施流量,同時限制不受信任網路的存取。 如需詳細資訊,請參閱網路安全性群組。
設定 Application Gateway Private Link:使用 Application Gateway Private Link,建立跨虛擬網路、訂閱、區域及 Microsoft Entra 租戶的私密連接,同時不暴露公共網際網路流量。 更多資訊請參見 Configure Azure 應用程式閘道 Private Link。
部署無公有 IP 的應用閘道:使用僅限私有的應用閘道部署,移除閘道的公有 IP 位址要求,定義拒絕所有外撥 NSG 規則以防止資料外洩,並消除對入
GatewayManager站服務標籤的依賴。 如需詳細資訊,請參閱私人應用程式閘道部署。啟用 Azure DDoS 網路保護:在承載應用閘道的虛擬網路上部署 Azure DDoS 網路防護,透過自適應調整與攻擊通知,保護面向網際網路的應用程式免受大規模 DDoS 攻擊。 如需詳細資訊,請參閱 使用 Azure DDoS 網路保護保護您的應用程式閘道。
為私有端點設定私有DNS:當後端或 金鑰保存庫 憑證使用私有端點時,將所需的私有 DNS 區域連結至應用閘道虛擬網路,以確保閘道能正確解析私有 IP 位址。 欲了解更多資訊,請參閱 Azure 應用程式閘道 中的 DNS 解析。
Web 應用程式保護
Web 應用程式防火牆(WAF)提供針對您應用程式的常見網路漏洞與攻擊所需的基本防護。
部署應用閘道 WAF v2:在面向網際網路的應用程式閘道啟用 Azure Web 應用程式防火牆,以防範常見攻擊,如 SQL 注入與跨站腳本。 如需詳細資訊,請參閱 什麼是 Azure 應用程式閘道上的 Azure Web 應用程式防火牆?
用 WAF 政策管理 WAF 設定:使用 WAF 政策用於應用閘道 WAF v2,而非舊有的 WAF 設定,這樣你可以全局管理受管理規則、排除、自訂規則及政策關聯,無論是每個監聽器還是每個 URI。 欲了解更多資訊,請參閱 Azure Web 應用程式防火牆 政策概述。
使用預設規則集(DRS)2.2:執行目前最高可用的預設規則集版本 DRS 2.2,升級時保留現有自訂,並在允許封鎖流量前,先在日誌模式下驗證新加入的啟用規則。 如需相關資訊,請參閱 升級 CRS 或 DRS 規則集版本。
在預防模式前調整 WAF:先從偵測模式開始,以了解流量模式並調整誤報,然後切換到預防模式,讓 WAF 阻擋惡意請求。 欲了解更多資訊,請參閱應用閘道上的 Azure Web 應用程式防火牆 最佳實務。
設定自訂 WAF 規則:建立自訂規則以解決應用程式特定的威脅,包括 IP 限制、地理過濾及請求屬性匹配,這些問題未被管理規則集完全涵蓋。 欲了解更多資訊,請參閱 建立並使用自訂網頁應用防火牆規則。
範圍 WAF 例外範圍:僅在誤報需要繞過特定請求檢查時,以及對最狹窄實務規則、規則群組或管理規則集設置範圍例外時,才使用預覽 WAF 例外。 欲了解更多資訊,請參閱 Azure 應用程式閘道 WAF 例外清單(預覽版)。
啟用機器人防護:使用應用程式閘道 WAF v2 的機器人保護管理規則集,分類並封鎖惡意機器人,同時允許已知良好的機器人。 如需詳細資訊,請參閱 Azure 應用程式閘道的 Bot 保護中的 Azure Web 應用程式防火牆概觀。
實作 WAF 速率限制:設定速率限制的自訂規則,以偵測並阻擋來自用戶端、地理區域或其他會話群組的異常高請求量。 如需詳細資訊,請參閱速率限制概觀。
身分識別與存取權管理
適當的認證與授權控制確保只有授權使用者與系統能存取應用閘道及其設定。
配置互惠 TLS 認證:當應用程式要求在閘道端進行客戶端憑證認證或憑證直通至後端時,使用互惠 TLS 認證。 欲了解更多資訊,請參閱 互助認證概述。
Assign lease-privilege Azure RBAC 角色:資源群組或 Application Gateway 資源的範圍管理權限。 僅對需要管理網路資源的營運商使用內建的 網路貢獻 者角色,因為沒有專門針對應用程式閘道器內建的管理角色。 欲了解更多資訊,請參閱 Azure 內建的網路角色。
強制應用閘道管理員使用條件存取:套用條件存取政策,要求多重驗證及符合規範的裝置,以保護能建立、修改或刪除應用閘道、WAF 政策、金鑰保存庫 中的監聽憑證,以及閘道所依賴的虛擬網路與公共 IP 資源。 欲了解更多資訊,請參閱「Azure 管理要求多重因素驗證」。
使用管理身份管理 金鑰保存庫 憑證:指派使用者指派的管理身份給 Application Gateway,並授權其存取 金鑰保存庫 憑證或秘密,例如 金鑰保存庫 使用 Azure RBAC 時的 金鑰保存庫 Secrets 使用者角色。 欲了解更多資訊,請參閱 Azure Key Vault 憑證下的 TLS 終止。
對生產閘道器套用資源鎖:使用資源鎖來幫助防止生產應用閘道及 WAF 政策資源的意外刪除或修改。 欲了解更多資訊,請參閱 「鎖定您的資源以保護您的基礎設施」。
定期檢視特權存取:對可管理應用閘道、WAF 政策、虛擬網路、公共 IP 位址及 金鑰保存庫 憑證的群組與特權身份進行存取審查。 欲了解更多資訊,請參閱「建立 PIM 中 Azure 資源角色的存取審查」。
數據保護
應用程式閘道的數據保護著重於保護傳輸中的數據,以及正確管理憑證和秘密。
要求使用最新的 TLS 版本:設定前端 TLS 政策,使用戶端連線使用 TLS 1.2 或更新版本,端對端 TLS 使用 HTTPS 後端設定,並確認後端伺服器支援 TLS 1.2 或更新版本,因為 TLS 1.0 與 1.1 已停止支援應用閘道。 欲了解更多資訊,請參閱《 TLS 終止及端對端 TLS 與應用閘道概述》。
安全配置 TLS 終止:對 HTTPS 監聽器使用受信任憑證及適當的 TLS 政策,讓應用閘道在執行第 7 層路由決策前,先安全解密用戶端流量。 欲了解更多資訊,請參閱 「使用應用閘道設定 TLS 終止」。
啟用端對端 TLS:使用 HTTPS 後端設定,使應用閘道終止用戶端 TLS 會話,並建立新的 TLS 連線至後端伺服器,保護整個請求路徑的流量。 欲了解更多資訊,請參閱《 TLS 終止及端對端 TLS 與應用閘道概述》。
將憑證儲存在 Azure Key Vault:請參考 金鑰保存庫 憑證或 secrets,以 HTTPS 監聽者為例,而非將憑證嵌入部署產物中。 使用無版本的秘密識別碼,讓應用閘道能接收更新的憑證版本。 欲了解更多資訊,請參閱 Azure Key Vault 憑證下的 TLS 終止。
自動化憑證輪換:使用 金鑰保存庫 憑證更新功能搭配應用程式閘道,讓閘道實例輪詢 金鑰保存庫 並自動輪換到更新的憑證版本。 欲了解更多資訊,請參閱 Azure Key Vault 憑證下的 TLS 終止。
將 HTTP 流量重新導向至 HTTPS:設定 HTTP 對 HTTPS 重定向,以降低敏感資料以明文傳輸的風險。 如需詳細資訊,請參閱 使用 Azure 入口網站建立具有 HTTP 至 HTTPS 重新導向的應用程式閘道。
記錄和監視
記錄和監視可讓您查看應用程式閘道作業,並協助偵測潛在的安全性威脅。
啟用診斷設定:設定診斷設定以收集 Application Gateway 存取日誌及 WAF 防火牆日誌,並存放於 Log Analytics、儲存或事件集線器等目的地。 檢視自動收集的活動日誌,檢查控制平面的變更。 如需詳細資訊,請參閱 應用程式閘道的診斷記錄。
使用資源專屬日誌資料表:將日誌傳送至資源專屬資料表
AGWAccessLogs,如 和AGWFirewallLogs,以簡化查詢並提升日誌的可發現性。 欲了解更多資訊,請參閱 Monitor Azure 應用程式閘道。設定安全警示:建立 Azure 監視器 警示,針對請求失敗、主機不健康、容量利用率、回應狀態異常及其他可能顯示可用性或安全問題的警示。 欲了解更多資訊,請參閱 Monitor Azure 應用程式閘道。
定期檢視 WAF 日誌:分析應用閘道 WAF 日誌以識別攻擊、調整誤報,並確認防止模式如預期般阻擋惡意請求。 如需詳細資訊,請參閱 Azure Web 應用程式防火牆監視和記錄。
將 WAF 日誌傳送至 Microsoft Sentinel:將 WAF 日誌整合至 Microsoft Sentinel 或其他 SIEM,使網頁應用程式威脅與環境其他部分的訊號相互關聯。 如需詳細資訊,請參閱 搭配 Azure Web 應用程式防火牆使用 Microsoft Sentinel。
監控後端健康狀況:使用後端健康檢視與自訂健康探測器偵測不健康的後端伺服器,防止流量被導向失敗或被入侵的實例。 欲了解更多資訊,請參閱 透過入口網站檢視後端健康狀況。
合規性和治理
合規與治理確保您的應用閘道設定被盤點、監控,並與組織政策保持一致。
強制使用 Azure 原則 設定:使用內建的 Azure 原則 定義來稽核並強制執行 Application Gateway 與 WAF 設定。 關鍵政策包括:Azure 應用程式閘道 應部署於 Azure WAF,應啟用 Web 應用程式防火牆 (WAF) 以啟用應用程式閘道,Web 應用程式防火牆 (WAF) 應使用指定的模式Azure 應用程式閘道 WAF 應啟用 Application Gateway 和 Bot Protection。 如需詳細資訊,請參閱 Azure 網路服務的 Azure 原則內建定義。
標籤閘道資源一致性:將標籤套用於應用閘道、WAF 政策、公共 IP 位址及相關網路資源,以確保所有權、環境與合規範圍明確。 如需詳細資訊,請參閱標記資源、資源群組和訂用帳戶以進行邏輯組織。
使用 Azure Resource Graph 的閘道資源清單:查詢應用程式閘道、WAF 政策、公共 IP 位址及虛擬網路資源,以大規模識別配置漂移與不支援的模式。 如需詳細資訊,請參閱 什麼是 Azure Resource Graph?。
備份及復原
應用閘道本身並未提供資料面備份功能。 復原規劃著重於保留設定、保護憑證與 WAF 政策定義,以及設計具韌性的流量路徑。
將閘道設定定義為程式碼:將應用程式閘道、監聽器、規則、後端、公共 IP 位址及相關網路設定儲存在 Bicep、ARM 範本、Terraform 或其他基礎設施即程式碼系統中,以便在意外刪除或區域故障後持續重新部署。 欲了解更多資訊,請參閱快速入門:使用 Azure 應用程式閘道 - Bicep 直接網頁流量。
匯出現有配置以進行復原:手動建立資源時,將生產的應用閘道設定匯出到 ARM 範本,然後在使用恢復前檢視並參數化範本。 欲了解更多資訊,請參閱從 Azure 入口網站匯出範本。
部署區域冗餘應用閘道 v2:在支援區域的區域使用支援可用性區的應用閘道 v2,以提升對區域故障的韌性。 如需詳細資訊,請參閱調整應用程式閘道 v2 和 WAF v2。
設計跨區流量復原:當應用程式需要跨區故障轉移時,在區域應用閘道部署前使用全域路由服務如 Azure Front Door 或 Azure 流量管理員。 欲了解更多資訊,請參閱 Use Azure 應用程式閘道 with Azure 流量管理員。
版本 WAF 政策設定:將 WAF 政策定義、自訂規則、排除項目及受管理的規則集選項保留在原始碼控制中,方便你在規則集更新後恢復已知良好的政策版本並重新套用調整。 欲了解更多資訊,請參閱應用閘道上的 Azure Web 應用程式防火牆 最佳實務。
保護憑證恢復相依:在復原計畫中包含 金鑰保存庫 憑證、秘密參考、管理身份指派及 金鑰保存庫 存取權限,讓還原的閘道器能取得 TLS 憑證。 欲了解更多資訊,請參閱 Azure Key Vault 憑證下的 TLS 終止。
後續步驟
- 了解更多關於 Azure 安全架構與設計的資訊。
- 檢視 Microsoft 雲端採用架構 中的安全性。
- 探索 Azure Application Gateway 上的 Web 應用程式防火牆。