我有 3 个 Azure Web 应用程序需要能够相互连接。
一个运行 FE 网站 - 需要从外部访问。
另外两个只是运行 FE 网站使用的服务。它们没有必要向公众开放,因此我想对此进行限制。
限制公众对这两个 web 应用程序的访问但仍允许公众访问 FE 站点的最佳方法是什么?
答案1
要将 Web 应用程序限制为公共访问,您应该将其部署在没有公共访问权限的 Azure vlan 中,并在公共和私有 Azure 之间设置防火墙,或者仅在 Web 服务器级别限制访问。后者无法阻止您受到互联网攻击,而防火墙可以。
作为最简单的解决方案,您可以通过 IP 或身份验证在 Web 服务器级别限制您的 Web 应用程序。
限制 IP 访问
一种可行的选择是通过 IP 地址限制对您的应用程序的访问。可以将 IP 地址添加为允许的 IP 地址网页配置应用程序。所有其他 IP 地址都将从 Azure 收到 403 Forbidden 响应。
<system.webServer>
<security>
<ipSecurity allowUnlisted="false">
<clear />
<add ipAddress="83.116.19.53"/> <!-- block one IP -->
<add ipAddress="83.116.119.0" subnetMask="255.255.255.0"/> <!--block network 83.116.119.0 to 83.116.119.255-->
</ipSecurity>
</security>
</system.webServer>
限制特定用户的访问
另一种选择是通过在 Web 应用程序上启用身份验证来限制访问。这可以针对多个身份验证提供程序执行,例如:Azure Active Directory、Google、Facebook、Twitter 和 Microsoft。以下步骤将帮助您将 Azure Active Directory 配置为身份验证提供程序。
- 在 Azure 门户中导航到 Web 应用程序的刀片。
- 单击“身份验证/授权”并选择“开启”。激活此选项将为您提供多个身份验证提供程序选项。我们将选择 Azure Active Directory。
- 由于没有预配置的应用程序,请选择“Express”选项。此选项将在 Azure Active Directory 中为我们注册企业应用程序,或者让您选择现有的应用程序。
- 单击此边栏选项卡上的“保存”将在 Azure Active Directory 中注册应用程序。请注意,您需要在 Azure AD 中拥有适当的角色才能注册应用程序(全局管理员或云应用程序管理员)。如果您没有这些,您将需要向租户管理员请求注册。
- 要授予用户访问该应用程序的权限,请在 Azure 门户中打开 Azure Active Directory 刀片并选择“企业应用程序”。
- 在企业应用程序边栏选项卡中,选择“所有应用程序”以查看在 Azure Active Directory 中注册的所有应用程序的列表。从此列表中选择应用程序。这将打开特定应用程序的边栏选项卡。
- 在边栏选项卡中选择“用户和组”。在“用户和组”边栏选项卡中,将显示所有被授予应用程序访问权限的用户。从这里,您可以添加用户以授予他们访问权限。