Front Door 建立和設定
Front Door 有數個元件會結合起來,加速 Web 應用程式的要求,同時在全域規模保持高可用性。 讓我們看看組成 Front Door 服務的不同元件,以及如何在路由傳送終端使用者要求時,發揮效用。
端點
端點是與網域相關聯的一或多個路由和安全性原則的邏輯群組。 標準或進階層設定檔可以支援多個端點。
路由
Front Door 路由規則會決定每個要求在抵達 Front Door 邊緣時的處理方式。 路由包含將網域和 URL 路徑對應至特定來源群組的資訊。 在路由中,您可以設定將要求轉送至原點所需的通訊協定。 您也可以啟用快取,以更快回應經常要求的內容,並設定規則集來處理特定要求類型。
原點
原點是 Azure Front Door 在無法使用快取時,從中擷取內容的應用程式部署。 Front Door 支援裝載於 Azure 的原點 (內部部署和另一個雲端)。 定義原點時,您必須指定類型、主機名稱、主機標頭、憑證主體名稱驗證、優先順序和權數。 定義這些欄位會協助 Front Door 判斷哪一個來源資源最適合回應傳入要求。
來源群組
來源群組是為其應用程式接收類似流量的一組原點。 此應用程式的邏輯群組可以位於相同區域或跨不同區域。 根據預設,要求會傳送至延遲最低的原點。 該行為可以藉由修改來源群組中每個原點的優先順序和權數來變更。 您也可以在來源群組中啟用工作階段親和性,以確保來自相同使用者的所有要求都會傳送至相同的來源資源。
規則引擎
規則集是自訂的規則引擎,會將規則組合成單一集合。 規則集可以與多個路由相關聯。 這些規則會先在 Front Door 邊緣進行處理,然後再將要求轉送至原點。 單一規則最多可以有 10 個比對條件和 5 個動作。
規則比對條件
比對條件會識別要求應採取的特定動作類型。 在規則中使用多個比對條件時,它們會使用 AND 邏輯分組在一起。
您可以在規則集中找到下列比對條件類型:
- 根據特定 IP 位址、連接埠或國家/地區篩選要求。
- 依標頭資訊篩選要求。
- 從行動裝置或桌面電腦裝置篩選要求。
- 從要求檔案名稱和副檔名篩選要求。
- 依主機名稱、TLS 通訊協定、要求 URL、通訊協定、路徑、查詢字串、post 引數和其他值來篩選要求。
規則動作
動作是符合比對條件時,套用至要求類型的行為。 以下是當要求符合條件時,您目前可採取的動作:
- 路由設定覆寫 - 覆寫來源群組或快取設定以用於要求。
- 修改要求標頭 - 在傳送至原點的要求中附加、覆寫或刪除標頭值。
- 修改回應標頭 - 在傳回用戶端之前,先附加、覆寫或刪除回應中的標頭值。
- URL 重新導向 - 將用戶端重新導向至不同的 URL。 Front Door 會傳送回應。
- URL 重寫 - 重寫要傳送至原點的要求路徑。
安全性原則
Front Door 支援 Web 應用程式防火牆 (WAF) 原則和規則。 Front Door 設定檔中的安全性原則包含多個 WAF 原則,可用於設定檔中的不同網域。 WAF 規則可保護您的 Web 服務免於遭受常見的惡意探索和弱點,例如 SQL 插入、跨網站指令碼、JAVA 攻擊等等。 Front Door 上的 WAF 目前支援下列功能:
- 原則設定 - 可讓您藉由使用一組自訂和受控規則,控制 Web 應用程式的存取權。
- 受控規則 - 提供一種簡單的方式來部署保護,以防範一組常見的安全性威脅。 由於 Azure 管理規則集,因此會視需要更新規則,以防範新的攻擊簽章。
- 自訂規則 - 可讓您根據自行定義的條件來控制 Web 應用程式的存取權。 自訂 WAF 規則由優先順序編號、規則類型、比對條件和動作組成。
- 排除清單 - 可讓您省略 WAF 評估中的特定要求屬性,並允許其餘的要求正常處理。
- 地區篩選 - 可讓您依國家/地區限制 Web 應用程式的存取權。
- Bot 保護 - 提供 Bot 規則以識別狀況良好的 Bot,並防止狀況不良的 Bot。
- IP 限制 - 可讓您藉由指定 IP 位址或 IP 位址範圍清單來控制 Web 應用程式的存取權。
- 速率限制 - 自訂速率限制規則會根據比對條件和傳入要求的速率來控制存取權。
- 微調 - 可讓您微調 WAF 規則,以符合您的應用程式需求和組織 WAF 需求。 您預期會看到的微調功能是定義規則排除、建立自訂規則,以及停用規則。
- 監視和記錄 - 透過與 Azure 監視器和 Azure 監視器記錄的整合來提供監視和記錄。
Front Door 層級
Front Door 有三層:傳統、標準和進階。 每一層都支援許多您可以使用的功能和最佳化。 標準層是內容傳遞最佳化,而進階層的安全性最佳化。 如需每個層級的完整支援功能清單,請參閱下表。
層級之間的功能比較
功能和最佳化 | Standard | Premium | 傳統 |
---|---|---|---|
靜態檔案傳遞 | Yes | .是 | Yes |
動態網站傳遞 | Yes | .是 | Yes |
自訂網域 | 是 - 以 DNS TXT 記錄為基礎的網域驗證 | 是 - 以 DNS TXT 記錄為基礎的網域驗證 | 是 - 以 CNAME 為基礎的驗證 |
快取管理 (清除、規則和壓縮) | Yes | .是 | Yes |
原點負載平衡 | Yes | .是 | Yes |
路徑型路由 | Yes | .是 | Yes |
規則引擎 | Yes | .是 | Yes |
伺服器變數 | Yes | .是 | No |
規則引擎中的規則運算式 | Yes | .是 | No |
展開的計量 | Yes | .是 | No |
進階分析/內建報告 | Yes | 是 - 包含 WAF 報告 | No |
未經處理記錄 - 存取記錄和 WAF 記錄 | Yes | .是 | Yes |
健康狀態探查記錄 | Yes | .是 | No |
自訂 Web 應用程式防火牆 (WAF) 規則 | Yes | .是 | Yes |
Microsoft 受控規則集 | No | Yes | 是 - 僅預設規則集 1.1 或更舊版本 |
Bot 保護 | No | .是 | No |
私人連結支援 | No | .是 | No |
簡化價格 (基礎 + 使用量) | Yes | .是 | No |
Azure 原則整合 | Yes | .是 | No |
Azure Advisor 整合 | Yes | .是 | No |
建立及設定設定檔
您可以使用 Azure 入口網站、Azure PowerShell 或 Azure CLI 來建立及設定 Front Door。 對於 Azure CLI,請使用 az afd profile create
命令來建立新的設定檔。 如果您偏好使用 PowerShell,請使用 New-AzFrontDoor
Cmdlet。 您可以使用 Azure 入口網站,從 Front Door 管理員完成大部分作業。
讓我們為先前部署的汽車部門網站建立並設定 Front Door 設定檔。