当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > ASP.NET数据库编程之处理文件访问许可

ASP.NET
为T-SQL添加intellisense功能
SQL Server 2005安装过程中出现错误的解决办法
SQL Server 2005 RTM 安装错误 :The SQL Server System Configuration Checker cannot be executed due to
有关于JSON的一些资料
不能忽略c#中的using和as操作符的用处
JavaScript系列之―同步还是异步?
获取远程网页的内容之一(downmoon原创)
获取远程网页的内容之二(downmoon原创)
ASP.Net中防止刷新自动触发事件的解决方案
asp.net下用js实现鼠标移至小图,自动显示相应大图
Asp.Net 和 AJAX.Net 的区别
提交页面的定位--scrollIntoView的用法
利用AJAX与数据岛实现无刷新绑定
asp.net下判断用户什么时候离开,以什么方式离开
DataSet 添加数据集、行、列、主键和外键等操作示例
读写xml所有节点个人小结 和 读取xml节点的数据总结
收藏的asp.net文件上传类源码
asp.net下GDI+的一些常用应用(水印,文字,圆角处理)技巧
一个可以让.net程序在非WIN平台上运行的软件Mono
使用ASP.NET 2.0 CSS 控件适配器生成CSS友好的HTML输出

ASP.NET数据库编程之处理文件访问许可


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 64 ::
收藏到网摘: n/a

  一个MDB数据库就是硬盘上的另外一个文件,所以,像其他文件一样,它也将遇到相同的文件访问许可问题。这个问题的意思是为了读取(和写入,就像您将要在本书的后面看到的那样)数据库文件,页面中所运行的应用程序必须具有相关许可才可以在Windows中读取(和写入)该文件。
  到目前为止,示例中的页面都能够“正常运行”的原因就是您使用的是VWD Web Server,一个在运行VWD的用户的身份下运行的轻量级程序。这就是说,VWD Web Server为您而运行,并且您已经被允许读取和写入页面连接的MDB文件。
  但是,当在IIS下运行页面时,情况就有一点复杂了。此时,ASP.NET页面运行于一个具有特定权限限制的用户账户的身份之下。在IIS 5.1之下,这个账户是“ASPNET”。在IIS 6.0或更高版本下,这个账户是“Network Service”,属于一个称为IIS_WPG(“worker process group”)的Windows用户组。为了在IIS下使用Access数据库,这些账户都必须授予对包含了MDB文件的目录进行读取的许可以及按情况授予写入的许可。
  为了帮助您创建这些许可,当数据库处于应用程序根目录之下的App_Data子目录下时,VWD将执行额外的步骤并自动地将这个许可授予ASPNET或者 Network Service账户。假如您正在使用VWD来开发机器上的页面,这个特定的目录就一直会被授予正确的许可。App_Data目录还有另外的好处,例如防止其中的任何文件响应发出请求的Web浏览器。这就是说将MDB文件放入应用程序的本地App_Data目录之后,就可以保护这些文件不被应用程序的客户端无意或有意地下载了。所以,我们极力推荐将MDB文件保存至App_Data目录中。
  如果必须将MDB文件保存至其他的地方,或者需要手动指定数据库目录的许可(例如,您正工作于一台远程Web服务器),那么可以使用Windows来为ASP.NET和/或 Network Service账户配置许可。
  如需手动设置许可,请按如下步骤执行:
  (1) 使用Windows Explorer浏览MDB文件所在的文件夹。
  (2) 右键单击这个目录并选择Properties。
  (3) 选择Security标签并单击Add按钮。
  (4) 添加本地的ASP.NET账户(IIS 5.1) 或者IIS_WPG组(IIS 6)。
  (5) 单击OK;然后将相关许可应用至这个目录。
  如需获得更多信息,请参阅名为“Running ASP.NET 1.1和IIS 6.0”的白皮书,可以从ASP.NET的Web站点:http://www.asp.net/faq/AspNetAndIIS6.aspx上获得该白皮书。