我正在尝试从Visual Studio 15.2部署Azure应用服务。具体来说,我正在尝试部署以下服务:https://github.com/Microsoft/Azure-SQL-DB-auditing-OMS-integration以将审核日志从SQL数据仓库提取到OMS。但是,出于安全考虑,我们希望在不创建公共端点的情况下这样做。我们已尝试在VNet中配置它,但除非VNet有公共网关,否则它不允许您这样做。
答案 0 :(得分:1)
配置不带公共URL的Azure应用服务
据我所知,我们无法在没有公共URL的情况下配置Azure App Service。如果您创建了一个Web应用程序,它将自动提供公共端点供用户访问。
这是两个解决方法。
我发现github应用程序只使用网络应用程序的webjobs。
一种方式:
如果您不需要任何网站,只需使用backgourd流程运行webjobs,您可以选择azure function本身使用WebJobs SDK但不需要配置App Service为了它。
第二种方式:
通常我们在Azure App Service Web应用程序中运行WebJobs,并且可以通过URL访问/浏览Azure App Service Web应用程序。如果您想阻止用户浏览到该Azure App Service Web应用程序,您可以将重写规则添加到站点的web.config到block web access。
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.当我们访问该网站时,您可以找到: