我目前开始使用ASP.NET MVC中的Web应用程序,作为Web应用程序托管在azure中。我创建了一个部署插槽(暂存,而不是生产插槽),我想知道如何阻止从所有IP地址访问该插槽,除了列出白名单的插槽。
我尝试从web配置中添加这部分代码。
<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="^mysite\-staging\." />
<!-- 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="192\.255\.42\.2" negate="true"/> -->
</conditions>
<action type="CustomResponse" statusCode="403" statusReason="Forbidden"
statusDescription="Site is not accessible" />
</rule>
</rules>
但在部署时,它会从服务器返回此错误:
Module IIS Web Core
Notification Unknown
Handler Not yet determined
Error Code 0x80070032
Config Error The configuration section 'rules' cannot be read because it is missing a section declaration
IIS版本10.0。
你知道我该如何限制上面提到的访问权限(可能是你尝试和工作过的类似的东西)
谢谢!
答案 0 :(得分:0)
当您将配置粘贴到问题中时,不确定是否是拼写错误,但您没有正确关闭<rules>
。将最终<rules>
更改为</rules>