Asp.net mvc web.config中的ASP.NET模拟与使用自定义标识运行应用程序池

Asp.net mvc web.config中的ASP.NET模拟与使用自定义标识运行应用程序池,asp.net-mvc,permissions,impersonation,application-pool,Asp.net Mvc,Permissions,Impersonation,Application Pool,好的,我正在使用ASP.NETMVC。我应该上传一个文件并将其写入网络共享 当我尝试写入网络位置时,收到“登录失败:未知用户名或错误密码” 我通过模拟文件服务器帐户在计算机上解决了此问题,并将其添加到web.config: <identity impersonate="true" userName="xx" password="xx"/> 但是,当我们在服务器上构建时,管理员建议使用自定义标识来运行应用程序池,而不是我的解决方案(不要问为什么),理论上也是如此。。。但事实并非如

好的,我正在使用ASP.NETMVC。我应该上传一个文件并将其写入网络共享

当我尝试写入网络位置时,收到“登录失败:未知用户名或错误密码”

我通过模拟文件服务器帐户在计算机上解决了此问题,并将其添加到web.config:

<identity impersonate="true" userName="xx" password="xx"/>

但是,当我们在服务器上构建时,管理员建议使用自定义标识来运行应用程序池,而不是我的解决方案(不要问为什么),理论上也是如此。。。但事实并非如此,我们再次遇到“登录失败”异常

这两种方法的区别是什么?为什么后面的方法不起作用


提前谢谢

将应用程序池更改为在有权访问网络共享的帐户下运行,或者创建一个新的应用程序池,其中包含这些凭据。

您的系统管理员正在考虑安全问题。如果他创建了一个IUSR帐户(或类似的东西),那么他可以限制它看到的内容。作为开发人员,您的帐户可能有权访问服务器和其他许多东西,而MVC站点不需要这些

因此,如果您将应用程序池设置为使用您的登录凭据,它可能会工作,但如果站点无法使用Sys Admin想要的帐户工作,则他或她必须向该帐户授予一些网络共享权限