我有一个Windows Web服务器,我正在使用xml for web.config我目前将.exe,.bin和.dll的扩展权限设置为false
但我在其中创建了一个名为“thing”的目录,其中包含.exe,我想为该目录编写xml权限,允许我从中下载.exe文件
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.webServer>
<security>
<requestFiltering>
<fileExtensions>
<add fileExtension=".dll" allowed="false" />
<add fileExtension=".exe" allowed="false" />
<add fileExtension=".bin" allowed="false" />
</fileExtensions>
</requestFiltering>
</security>
</system.webServer>
</configuration>
请帮忙吗?
答案 0 :(得分:0)
在IIS7 documentation中,您可以在<requestFiltering>
中使用3个标记来控制网址访问:
<denyUrlSequences>
- 此元素可以包含IIS 7将拒绝的URL序列模式的集合;例如:您可以拒绝攻击者可能试图利用的部分URL序列。<fileExtensions>
- 此元素可以包含IIS 7将拒绝或允许的文件扩展名集合;例如:您可以阻止对Web.config文件的所有请求。<hiddenSegments>
- 此元素可以包含无法浏览的网址集合;例如:您可以拒绝ASP.NET App_Code文件夹的请求。 例如:
<requestFiltering>
<!-- deny access to any URL which contains /private -->
<denyUrlSequences>
<add sequence="/private"/>
</denyUrlSequences>
<!-- block all file extensions except js,css,html -->
<fileExtensions allowUnlisted="false">
<add fileExtension=".js" allowed="true" />
<add fileExtension=".css" allowed="true" />
<add fileExtension=".html" allowed="true" />
</fileExtensions>
<!-- hide config and bin dir -->
<hiddenSegments>
<add segment="config" />
<add segment="bin" />
</hiddenSegments>
</requestFiltering>
您可以隐藏某些网址或阻止某些文件扩展名,但据我所知,只有更改IIS配置,才能通过文件夹微调特定文件扩展名的可访问性。如果这是你想要的,你可能需要编写一些服务器端代码。