asp.net访问共享文件,是发布到服务器以后,并且共享文件与asp.net程序不在同一台电脑上

yuji821 2010-12-25 05:28:03
是这样的路径

\\218.118.18.18\共享\a.txt,就是要能够用这样的方法可以读取到
File.ReadAllBytes(filePath);
或者

FileInfo f = new FileInfo(filePath);
FileStream fs = f.Open(FileMode.Open, FileAccess.Read, FileShare.Read);
StreamReader sr = new StreamReader(fs);
string s = sr.ReadToEnd();
sr.Close();
fs.Close();

我在开发中,是可以读取到的,因为vs是以administrator身份运行的,在网上找到一种方法是在web.config中配置
<identity impersonate="true" userName="test" password="test"/>

但觉得这样不太好,这样做了以后整个网站是以这个账户在运行,只要密码改了整个网站就不能访问了,极大的不安全,asp.net默认以最低权限运行


我现在只要这段代码以这个用户访问,能不能在读取这个文件时模拟这个用户
...全文
411 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
wander1128 2010-12-29
  • 打赏
  • 举报
回复
扯淡,看不懂……
子夜__ 2010-12-29
  • 打赏
  • 举报
回复
yzf86211861 2010-12-29
  • 打赏
  • 举报
回复
我也 想听听 6楼的 想法
xiatiandetonghua 2010-12-26
  • 打赏
  • 举报
回复
那种方法才是最好的呀?
archu 2010-12-26
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 sp1234 的回复:]

遇到这样来实现程序设计需求,也只能苦笑。

软件企业中不可能这样玩编程,它一定会换一种访问文件服务的方式,而不是瞎玩。
[/Quote]

这位高人,你的这番言论什么意思呢?恕我等孤陋。
这种需求是真真实实存在的,那么你说应该换何种方式?
  • 打赏
  • 举报
回复
遇到这样来实现程序设计需求,也只能苦笑。

软件企业中不可能这样玩编程,它一定会换一种访问文件服务的方式,而不是瞎玩。
archu 2010-12-26
  • 打赏
  • 举报
回复
那你就只能用1楼所提到的方法
yuji821 2010-12-26
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 archu 的回复:]
谁说发布到IIS就不能访问共享文件了?只要你的共享文件夹对Everyone开放“读取”权限就够了。

对于1楼提到的方法,当你需要往共享目录写入的时候才需要这么做。

至于2楼提到的方法,绝对不可取。让网站运行在“本地系统”账号下面是一件多么危险的事情啊!假设某人通过SQL注入在你的网站里面加一个自己的页面,那么他想干吗就能干吗了。
[/Quote]

但是不能给erveryone读取权限,这个共享目录文件不能开发erveryone读取权限,只能用test用户访问
archu 2010-12-25
  • 打赏
  • 举报
回复
谁说发布到IIS就不能访问共享文件了?只要你的共享文件夹对Everyone开放“读取”权限就够了。

对于1楼提到的方法,当你需要往共享目录写入的时候才需要这么做。

至于2楼提到的方法,绝对不可取。让网站运行在“本地系统”账号下面是一件多么危险的事情啊!假设某人通过SQL注入在你的网站里面加一个自己的页面,那么他想干吗就能干吗了。
wuyq11 2010-12-25
  • 打赏
  • 举报
回复
配置应用程序池中标识,设置为本地系统
孟子E章 2010-12-25
  • 打赏
  • 举报
回复
你可以用代码临时设置权限,参考
http://dotnet.aspx.cc/file/Upload-Files-TO-UNC-Share-Using-ASP.NET.aspx
后面的代码

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧