.NET中防止Access数据库下载

 更新时间:2006年09月28日 00:00:00   作者:  
如何防止Access数据库下载是一个很老的话题了,网上的讨论也比较多。在这里只是探讨ASP.NET下防止Access数据库被下载的方法,有些是对以前方法的总结,部分是自己原创。其中可能有不完善甚至不正确的地方,欢迎大家指出,一同进步。



         目前的解决方案主要有以下几种:



1.       把数据库文件放置到站点目录之外



2.       设置存放数据库文件的IIS目录权限为不可读取(IIS信息服务管理->选择需要设置目录->右键->属性->目录选项卡->取消读取复选框)



3.       采用ODBC数据源



以上三种方法都比较经典也比较安全,适合能对服务器直接操作的情况(因为三种方法都需要直接操作服务器进行设置),当然这也是ASP平台下防止Access被下载的解决方案。







         ASP平台下还有一种解决办法,那就是在数据库中添加一个长二进制表,然后把文件后缀修改为.asp。(详情可参照动网论坛数据库的相应数据表)



4.       将你的 Access 重命名 *.asax:因为 ASP.NET 的处理机制中,默认情况下,对这样的请求是直接拒绝的,并不会有思归提到的解析过程耗费资源等问题。按照这个思路,其实还可以把 Access 重命名为 *.config,*.vb, *.cs 等等。



5.       将你的 Access 放在你的应用程序根下 bin 目录(也就是你放置 DLL 文件的那个目录)中:已经发现,IIS 默认被配置为拒绝直接访问 bin 目录中的文件,用以保护对 DLL 的请求,事实上也同时保护了放在 bin 目录中其他文件。但是对于这种方法,有人提出疑问: 会不会有这样的后果,数据库读写时会造成程序集被频繁的刷新,也会Session和Application不断丢失



6. (个人原创)另外一种方法是利用.NET的访问权限控制达到禁止匿名用户下载数据库的目的,具体如下:



打开配置文件Web.config,在configuration节点下添加如下一段配置:



  <location path="DataBase">



         <system.web>



                   <authorization>



                            <deny users="*" />



                   </authorization>



         </system.web>



  </location>



DataBase是你的数据库文件存放目录,如果是根目录则用<locateon path=”~/database.aspx”>替换即可。添加了上述配置后再把数据库后缀修改为.aspx等需要经过IIS解析的文件类型即可。



因为<deny users="*" />语句限制任何匿名用户访问路径path="DataBase"下的所有需要解析的文件。







         注意:无论是ASP中还是.NET下,对于直接把Access数据库后缀直接改为.asp和.aspx,或者在文件名前面添加“#”或文件名中加入空格,用FlashGet照下不误。

相关文章

  • Asp.Net中索引器的用法分析

    Asp.Net中索引器的用法分析

    这篇文章主要介绍了Asp.Net中索引器的用法,以实例形式详细分析了Asp.Net中索引器的定义、属性与具体使用方法,并附带说明了相关的注意事项,在asp.net项目开发中有不错的参考借鉴价值,需要的朋友可以参考下
    2014-11-11
  • ASP.NET Core中Grpc通信的简单用法

    ASP.NET Core中Grpc通信的简单用法

    这篇文章介绍了ASP.NET Core中Grpc通信的简单用法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • 使用.net core3.0 正式版创建Winform程序的方法(图文)

    使用.net core3.0 正式版创建Winform程序的方法(图文)

    这篇文章主要介绍了使用.net core3.0 正式版创建Winform程序的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-03-03
  • Asp.net实现MVC处理文件的上传下载功能实例教程

    Asp.net实现MVC处理文件的上传下载功能实例教程

    这篇文章主要介绍了Asp.net实现MVC处理文件的上传下载功能,比较全面而系统的对Asp.net MVC的文件上传下载功能进行了深入分析,有很好的借鉴价值,需要的朋友可以参考下
    2014-08-08
  • 详解ASP.NET MVC3:Razor的@:和语法

    详解ASP.NET MVC3:Razor的@:和语法

    这篇文章主要介绍了详解ASP.NET MVC3:Razor的@:和语法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-01-01
  • ASP.NET Core配置文件的获取和设置

    ASP.NET Core配置文件的获取和设置

    这篇文章介绍了ASP.NET Core配置文件获取和设置的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-04-04
  • ASP.NET Core使用JWT认证授权的方法

    ASP.NET Core使用JWT认证授权的方法

    这篇文章主要介绍了ASP.NET Core使用JWT认证授权的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • 详细说明asp.net中datareader 和 dataset 的区别

    详细说明asp.net中datareader 和 dataset 的区别

    asp.net中datareader 和 dataset的区别主要是在获取数据的机制和获取数据的方式方面,下面我们来看教程
    2013-08-08
  • CZGL.ProcessMetrics监控.NET应用

    CZGL.ProcessMetrics监控.NET应用

    这篇文章介绍了CZGL.ProcessMetrics监控.NET应用的方法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-04-04
  • ASP.NET配置KindEditor文本编辑器图文教程

    ASP.NET配置KindEditor文本编辑器图文教程

    这篇文章主要为大家分享了ASP.NET配置KindEditor文本编辑器图文教程,很实用的学习教程,感兴趣的小伙伴们可以参考一下
    2016-05-05

最新评论