我写我还没有工作过的网络中的新应用,并正在运行一个问题。

如果我有下面的C#代码:

FileStream fs = File.Create(@"\\MyServer\MyShare\testing.txt");
fs.Close();

在一个控制台应用程序,此代码正确执行。

在ASP.Net应用程序时,收到此错误:的登录失败:未知的用户名或密码错误

在ASP.Net应用程序,如果我在身份冒充添加=“真”,我得到这个错误:访问路径“\ MyServer的\ MyShare中\ testing.txt”被拒绝

我从未跑进该登录失败消息前;这哪里是哪里来的?如果我在服务器上创建一个应用程序,并把它写入phsyical位置,它工作正常(所以安全性有很好的),它只是好像安全的份额不工作(即使它有“所有人”组到全写),或有东西在哪我不能在一般的查看任何服务器级别的缺失。

有谁知道我在这里失踪?我已经写了做类似的事情,从来没有遇到这样的问题,其他应用程序

谢谢!

有帮助吗?

解决方案

<强>更新

所以我觉得我张贴了这个太早......它是失败在我的本地主机的原因是由于目录被设置为允许匿名访问(所以页面没有被冒充的;用户是“”)<。 / p>

它也开始在服务器上的工作,以及;然而,什么也没有发生变化,因此......我不知道的东西应用程序的停机时间/关机或在什么触发,但一切都按预期工作。

感谢您的意见!

其他提示

问题是与身份冒充设置为false ASP.NET辅助进程帐户试图写入到共享,通常认为是网络服务或ASPNET帐户。根据哪个版本的Windows您正在运行。

设置冒充为true,而无需指定用户名或密码将使用当前用户的认证尝试,并提出请求。

您将需要与相关的政府补助工作进程帐户权限,其中最有可能是不可能的。或B创建你的应用程序可以模拟,然后在指定的身份标签的web.config文件中的凭据特定帐户。

默认情况下,ASP.NET应用程序运行为的 YourMachine 的\ IUSR_ YourMachine。的你要么必须开拓上的权限共享给大家委托人(其中仍可能不工作,如果机器是不是在同一个域),或运行IIS应用程序的人谁有权访问该共享。

您可以更改ASP.NET应用由下运行的用户:

。开的管理工具 - > Internet信息服务,然后右键单击包含应用程序的网站或虚拟目录上点击属性即可。选择目录安全性标签,然后点击修改。最后,在匿名访问部分键入具有访问共享的用户的用户名和密码。

麦克

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top