【问题标题】:How can i secure an Azure Website/Function from the WWW?如何从 WWW 保护 Azure 网站/功能?
【发布时间】:2017-05-15 01:20:04
【问题描述】:

我们有一个基于 API 的微服务系统,其中一个公共 API 网关(在 Azure 网站上运行的 .NET Nancy API)调用微服务 API(各种技术)以返回数据。

目前,微服务 API 要么是 Azure 网站,要么是 Azure Functions(HTTP 触发器),这意味着它们有一个公共终结点,HTTP 向公众公开。 (例如https://my-microservice.azurewebsites.net)

有什么办法可以锁定它,以便只有 API 网关可以调用它?

我读过关于DIPR 的信息,但这似乎是基于公共 IPv4 地址(我认为我们无法为 API 网关获取静态 IP?)。

目前我们通过不记名令牌(使用 IdSrv 身份验证服务器)使微服务 API 需要身份验证,但理想情况下,我希望在 network 级别保护 API,然后删除令牌/IdSrv 依赖项.我们可以利用 VNET 吗?

其他人如何解决这个问题?例如,我们如何才能锁定 Azure 网站以防止公共访问?

TIA。

【问题讨论】:

    标签: azure azure-web-app-service azure-functions azure-security


    【解决方案1】:

    您应该使用 Azure 虚拟网络并为入站/出站流量创建规则(适用于标准/高级应用服务计划):https://docs.microsoft.com/en-us/azure/app-service-web/web-sites-integrate-with-vnet

    还有 Azure 应用服务环境,但它需要高级应用服务计划:https://docs.microsoft.com/en-us/azure/app-service-web/app-service-app-service-environment-intro

    【讨论】:

    • 感谢您的回答。我假设 VNET 解决方案仅适用于应用服务计划?例如,由于 Azure Functions on Consumption 计划没有固定的位置/VM,也没有支持的应用服务计划,它们不能放在 VNET 中吗?如果是这样,我有哪些选择来保护 Azure Functions on Consumption 计划?
    • 另外 - 看起来入站/出站流量仅适用于虚拟机/云服务,而不适用于 Web 应用程序?根据我的阅读 - 似乎限制访问 Azure 网站的唯一方法是使用应用服务环境。
    • 我猜你是对的。似乎只有通过 Azure 服务环境......我会检查是否有任何其他方式。
    • feedback.azure.com/forums/169385-web-apps/suggestions/… :) :) 需要更多投票。 Ta @ThiagoCustodio 用于创建此 UserVoice 请求。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-04
    • 1970-01-01
    • 1970-01-01
    • 2011-07-11
    • 1970-01-01
    相关资源
    最近更新 更多