引用博客园dudu的博客:http://www.cnblogs.com/dudu/archive/2012/03/27/asp_net_share_folder.html
假设ASP.NET程序在A服务器,文件在B服务器的SysDoc共享文件夹中,访问地址是\\192.168.18.18\SysDoc\。要实现就是在A服务器的ASP.NET程序中能读写共享文件夹\\192.168.18.18\SysDoc\中的文件
(注:A服务器为ASP.NET程序所在服务器,B服务器为共享文件夹所在服务器)
- 在两台服务器上建立相同用户名、相同密码的Windows帐户(A与B服务器都要建),比如假设这里用户名是user01,密码是psw。
- 取消两台服务器上的user01帐户的远程控制(Remote Control)权限(让这个帐户拥有尽可能少的权限)
- 将B服务器上的user01帐户移出所有用户组(包含Users)
- 在B服务器上创建共享文件夹SysDoc并给user01帐户授予写权限,有两个权限需要设置,一个是文件系统权限,一个是共享权限
- 在A服务器的ASP.NET程序的web.config文件中,添加帐户模拟设置
- <system.web>
<identity impersonate="true" userName="user01" password="psw"/>
</system.web>
补充:这样共享文件OK,但水晶报表导出会报错。经过调查,将A服务器上C:\Windows\Temp文件夹,开放安全权限给“IIS_IUSRS”(可修改)OK。