【问题标题】:ASP.NET Impersonation in web.config vs. running the app pool with custom identityweb.config 中的 ASP.NET 模拟与使用自定义标识运行应用程序池
【发布时间】:2011-01-13 05:15:30
【问题描述】:

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

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

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

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

但是当我们在服务器上进行构建时,管理员建议以自定义身份而不是我的解决方案运行应用程序池(不要问为什么),理论上是一样的......但它不是,我们又遇到了“登录失败”异常。

这两种方法有什么区别,为什么后面的不行?

提前致谢!

【问题讨论】:

    标签: asp.net-mvc permissions impersonation application-pool


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

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

      因此,如果您将应用程序池设置为使用您的登录凭据,它可能会工作,但如果网站无法使用系统管理员想要的帐户工作,那么他或她将不得不授予该帐户一些权限到网络共享。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-02-19
        • 2020-10-28
        • 1970-01-01
        • 2019-12-16
        • 1970-01-01
        • 2021-05-28
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多