在我過去的文章中,我介紹了Azure Front Door的用法。但是,當我們配置完Front Door並將網站域綁定到Front Door時,用戶仍然可以訪問後臺的 App Service URL。在本文中,我將介紹如何在使用Azure Front Door時防止訪問App Service域名。
例如,我的博客將 https://edi.wang 域名綁定到 Front Door,我在 East Asia 和 West US 的 Backend Pool 中運行2個 App Services。他們的 URL 是 https://ediwang-web-ea.azurewebsites.net/ 和 https://ediwang-web-us.azurewebsites.net/。
通常,用戶通過 https://edi.wang 訪問我的博客,該博客由Azure Front Door 作為入口,並由 Azure WAF 保護。但是在 Azure Application Insights 日誌中,我仍然可以看到一些針對原始 App Service URL 的請求。因為它們不受WAF保護,所以網站可能要被菊爆。
因此,我需要使 App Service 拒絕非 Azure Front Door 過來的流量。
在 App Service 的管理頁面,展開 Networking,點擊 Configure Access Restrictions
選擇您不希望用戶訪問的 DNS 名稱。在我這裡是 「ediwang-web-ea.azurewebsites.net」。
點擊「Add rule」按鈕。
指定一個你喜歡的 Name 和 Priority。在 Type 裡選擇 Service Tag,然後選擇 AzureFrontDoor.Backend
你也需要指定 X-Azure-FDID 的值。
你可以在 Front Door 管理頁面找到 X-Azure-FDID 的值,它是個 GUID。
現在嘗試訪問 App Service 的域名,如我這個 https://ediwang-web-ea.azurewebsites.net/
你會看到一個大大的403頁面甩臉上,但是正常訪問 https://edi.wang/ 依然是允許的。
花 9.96 分鐘,對其餘的 Backend Pool 也配置相同的規則,就能限制住用戶只能通過 Azure Front Door 來訪問你的網站了!
參考:https://docs.microsoft.com/en-us/azure/frontdoor/front-door-faq#how-do-i-lock-down-the-access-to-my-backend-to-only-azure-front-door-
汪宇傑博客
Azure | .NET | 微軟 MVP
無廣告,不賣課,做純粹的技術公眾號