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

ASP.NET
asp.net GridView控件中模板列CheckBox全选、反选、取消
asp.net GridView 删除时弹出确认对话框(包括内容提示)
asp.net DropDownList 三级联动下拉菜单实现代码
asp DataTable添加列和行的三种方法
Asp.net 页面调用javascript变量的值
asp.net 长文章通过设定的行数分页
asp.net 定时间点执行任务的简易解决办法
asp.net 页面延时五秒,跳转到另外的页面
asp.net 动态输出透明gif图片
asp.net DataList与Repeater用法区别
asp.net Javascript获取CheckBoxList的value
asp.net程序在调式和发布之间图片路径问题的解决方法
asp.net下生成英文字符数字验证码的代码
asp.net 页面版文本框智能提示JSCode (升级版)
ASP.NET URL伪静态重写实现方法
ASP.NET 2.0 中Forms安全认证
asp.net 动态添加多个用户控件
asp.net Repeater显示父子表数据,无闪烁
asp.net 无法获取的内部内容,因为该内容不是文本 的解决方法
asp.net GridView排序简单实现

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 67 ::
收藏到网摘: 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上获得该白皮书。