IIS7访问局域网内其它机器的共享文件夹
1.共享资源服务器为 ShareServer,IP地址为:192.168.100.10;
2.Web服务器为 WebServer,IP地址为:192.168.100.20
详细步骤:
一、共享账户的建立
1.在 WebServer 上建立一个用户名,方便使用该用户读取 ShareServer 上的共享目录,为了web文件能正常运行,同时又避免使用户拥有过高的权限,我们可以直接把该用户归入 Guests(win2003中) 组,或者 IIS_IUSRS(win2008中) 组内,这样就一举多得了。我这里建立的用户名为 pd ,密码为 gxp;
2.在 ShareServer 中也建立一个同名同密码的用户(必须一致,否则在UNC验证的时候会无法登陆)。这里用户名也应该为 pd ,密码为 gxp,也归入Guests组中;
二、共享位置的建立
1.ShareServer 中,共享出一个目录,共享名为 public ,共享权限设置为 Administrators 组 读取+写入,pd 用户 读取(如果需要存东西,就加上 写入 权限);
这里 Administrators 用户必须拥有 读取+写入 权限,否则在 WebServer 里使用IIS直接设置的时候会提示无法保存设置。
共享位置的文件夹安全设置也必须加入 pd 的 读取运行 权限,另外还需要加入IIS进程用户的 读取运行 权限,这里不再描述运行IIS站点所需要的 文件夹安全 权限设置。
三、IIS中引用共享目录
1.WebServer 中IIS里建立站点或虚拟目录,路径指向\\192.168.100.10\web ,连接认证用户手动输入为 pd ,密码 gxp。
当第1步完成的时候,您已经通过web方式访问该站点或虚拟目录中的来自 ShareServer 共享目录的资源,但是 ASP.Net 还没有权限执行。
2.ASP.Net的权限设置
从站点根目录下打开 web.config 文件,在 <system.web> 节点以内,加入以下内容:
<identity impersonate="true" userName="pd" password="gxp" />
其实就是修改了 ASP.Net 执行的认证方式,把认证方式修改为 ASP.Net模拟用户 ,
另外还要修改一个文件夹的权限:
这样就能让 ASP.Net 通过刚才建立的共享账号执行和访问 ShareServer 中的资源了。