我们正在运行Umbraco 7.4。由于公司安全要求,我们需要阻止人们从服务器本身以外的任何地方访问oursite.com/umbraco,如localhost / umbraco。我试过/ umbraco#/重写IIS无济于事。我为/ umbraco尝试了一个IIS拒绝规则,但这实际上打破了我们网站周围的其他一些东西。还有其他一些令人敬畏的方法可以阻止远程访问Umbraco后台吗?
答案 0 :(得分:0)
我在IIS重写规则方面做了类似的事情,你只能从一组特定的域访问后台(因此通配符匹配)。您可以使用此选项仅允许从localhost访问。注意,将规则放在umbraco文件夹中,而不是主站点web.config中。要放在umbraco文件夹中的完整web.config内容是:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Umbraco only from localhost" enabled="true" patternSyntax="Wildcard" stopProcessing="false">
<match url="*" negate="false" />
<action type="Rewrite" url="/UmbrSubDir404" appendQueryString="false" logRewrittenUrl="false" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTP_HOST}" pattern="localhost" negate="true" />
<add input="{URL}" pattern="*RestServices/ScheduledPublish*" negate="true" />
<add input="{URL}" pattern="*umbraco/Api/*" negate="true" />
</conditions>
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>