asp.net

位置:IT落伍者 >> asp.net >> 浏览文章

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


发布日期:2018年07月05日
 
ASP.NET数据库编程之处理文件访问许可
一个MDB数据库就是硬盘上的另外一个文件所以像其他文件一样它也将遇到相同的文件访问许可问题这个问题的意思是为了读取(和写入就像您将要在本书的后面看到的那样)数据库文件页面中所运行的应用程序必须具有相关许可才可以在Windows中读取(和写入)该文件

到目前为止示例中的页面都能够正常运行的原因就是您使用的是VWD Web Server一个在运行VWD的用户的身份下运行的轻量级程序这就是说VWD Web Server为您而运行并且您已经被允许读取和写入页面连接的MDB文件

但是当在IIS下运行页面时情况就有一点复杂了此时页面运行于一个具有特定权限限制的用户账户的身份之下在IIS 之下这个账户是ASPNET在IIS 或更高版本下这个账户是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来为ASPNET和/或 Network Service账户配置许可

如需手动设置许可请按如下步骤执行

() 使用Windows Explorer浏览MDB文件所在的文件夹

() 右键单击这个目录并选择Properties

() 选择Security标签并单击Add按钮

() 添加本地的ASPNET账户(IIS ) 或者IIS_WPG组(IIS )

() 单击OK然后将相关许可应用至这个目录

上一篇:在ASP.NET里 MVC框架添加AJAX支持

下一篇:关于ASP.NET应用程序规划与设计