1

我正在尝试从 Visual Studio 15.2 部署 Azure 应用服务。具体来说,我正在尝试部署以下服务:https ://github.com/Microsoft/Azure-SQL-DB-auditing-OMS-integration以将审计日志从 SQL 数据仓库摄取到 OMS。但是,出于安全考虑,我们希望在不创建公共端点(即 url)的情况下这样做。我们已尝试在 VNet 中对其进行配置,但除非 VNet 具有公共网关,否则它不允许您这样做。

4

1 回答 1

2

配置没有公共 URL 的 Azure 应用服务

据我所知,我们无法在没有公共 URL 的情况下配置 Azure App Service。如果您创建了 Web 应用程序,它将自动提供公共端点供用户访问。

这里有两个解决方法。

我发现 github 应用程序只使用了 web 应用程序的 webjobs。

单程:

如果您不需要任何网站,只需使用 backgourd 进程运行 webjobs,您可以选择使用WebJobs SDK本身但不需要为其配置 App Service 的azure function 。

第二种方式:

通常我们在 Azure App Service Web 应用程序中运行 WebJobs,并且可以通过 URL 访问/浏览该 Azure App Service Web 应用程序。如果要阻止用户浏览到该 Azure 应用服务 Web 应用,可以在站点的 web.config 中添加重写规则以阻止 Web 访问

web.config 是这样的:

<?xml version="1.0" encoding="utf-8"?>
<!--
  For more information on how to configure your ASP.NET application, please visit
  https://go.microsoft.com/fwlink/?LinkId=169433
  -->
<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="Block unauthorized traffic to staging sites" stopProcessing="true">
          <match url=".*" />
          <conditions>
            <!-- Enter your staging site host name here as the pattern-->
            <add input="{HTTP_HOST}" pattern=".*" />
            <!-- Enter your white listed IP addresses -->
            <add input="{REMOTE_ADDR}" pattern="123\.123\.123\.1" negate="true"/>
            <!-- Add the white listed IP addresses with a new condition as seen below -->
            <!-- <add input="{REMOTE_ADDR}" pattern="123\.123\.123\.2" negate="true"/> -->

          </conditions>
          <action type="CustomResponse" statusCode="403" statusReason="Forbidden"
        statusDescription="Site is not accessible" />

        </rule>

      </rules>
    </rewrite>
  </system.webServer>

</configuration>

有关如何将 web.config 添加到 Web 应用程序的更多详细信息,您可以按照以下步骤操作:

1.在门户网站打开kudu工具。

在此处输入图像描述

2.打开 cmd 控制台并找到 \site\wwwroot 文件夹。

在此处输入图像描述

3.创建 web.config 并复制其中的设置。

在此处输入图像描述

4.当我们访问该网站时,您会发现:

在此处输入图像描述

于 2017-08-14T02:29:34.927 回答