如果我使用 http://mysite/myfolder/myfile.dll 这样的网址,我获取一个对话框“是否要打开或保存此文件”。当然,我不希望人们能够下载和反汇编我们的dll。我如何拒绝人们直接访问这些文件?

有帮助吗?

解决方案

拒绝所有dll在asp.net网站上都很激烈,因为Silverlight等使用客户端浏览器需要下载的客户端dll。

您可以使用IIS管理控制台或Management API来禁用dll文件或目录上的身份验证。

只需取消选中所有身份验证选项,访问权限就会被拒绝。

其他提示

通常默认情况下不允许这样做。如果您进入IIS管理器并编辑网站,则需要取消选中“脚本源访问权限”。 DLL也应该在禁止的文件扩展名列表中。

简短的回答是,不应该有任何您不想在网络根目录下提供的文件。

我个人不知道IIS 6或7,但在Apache下,目录被指定为Web根目录,例如\ site \ htdocs,外面没有任何东西可以访问。如果将DLL文件保留在该层次结构之外,则它们将无法访问。

设置适当的Windows文件安全性和访问权限。

E.g。当您使用asp.net时,您应该拒绝除ASPNET帐户以外的所有用户访问.dll。

!IUSR_xxx帐户对你的.dll没有任何权利!

如果由于某种原因无法更改IIS中的脚本映射,可以使用 HttpForbiddenHandler

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top