【发布时间】:2016-12-13 02:16:27
【问题描述】:
我在使用 IIS 8 时遇到了一个有趣的问题。我可以运行刚刚找到的应用程序。但是,在触发 sql 查询后,我得到了可怕的“用户'NT AUTHORITY\ANONYMOUS LOGON' 登录失败”。
这一切的真正关键在于,当我使用 Visual Studio 2013 在 IIS Express 中运行时,它运行良好。
Web.Config:
<system.web>
<authentication mode="Windows" />
<identity impersonate="true" />
<authorization>
<deny users="?" />
</authorization>
</system.web>
感谢任何/所有帮助!
【问题讨论】:
-
Lex,我阅读了您的博文,感谢您提供的信息。但是,我已将 appPool 标识更改为所有可能的选择本地服务、本地系统、网络服务和应用程序池标识不起作用。但是,当我在自定义帐户下将池标识设置为我的帐户时,它可以正常工作。我错过了什么?
-
有些域用户在 sql server 上登录我想让他们在页面加载时使用他们的域凭据,然后应用程序将使用这些凭据连接到 sql server。
-
模仿只是第一步。如果您没有正确配置 Kerberos 委派(AD 设置),则仍然可能发生错误。
-
这个应用程序曾经是一个 ASP.net 应用程序,它运行良好。我将它重新分解为 MVC Web 应用程序,但现在它不起作用。我不确定 kerberos 委托在这种情况下是否有意义。
-
如果您检查 Kerberos 委托有多复杂,您就会明白为什么它很容易被破坏并无法工作。此外,“它运行良好”是一个无效声明,您是否仔细检查过它是如何彻底配置的?
标签: c# visual-studio iis iis-express iis-8