SQL集成安全性在ASP.NET中成功,但在经典ASP中却失败

问题描述 投票:0回答:4

在IIS 8.5上,我启用的唯一身份验证方法是Windows身份验证,带有协商和NTLM。当我在身份为域帐户的应用程序池下运行的任何ASP.NET应用程序中使用连接字符串时,都可以正常连接。在经典的ASP中,我得到:

 Microsoft OLE DB Provider for SQL Server error '80040e4d' 

 Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'. 

据我所知,没有为委派配置服务器,也没有明确设置SPN。我正在通过FQDN(即netbiosname.mydomain.com)访问此框。

为什么它在ASP.NET中有效,但是在经典的ASP中却失败了?我正在经历双跳吗?有没有办法确认它实际上是双跳?

这是我得到的错误:

 Microsoft OLE DB Provider for SQL Server error '80040e4d' 

 Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'. 
asp.net iis sql-server-2008-r2 kerberos iis-8.5
4个回答
1
投票

我发现了解决该问题的方法,我相信最后一步是唯一的帮助,但这是我所做的:


0
投票

我想您需要将经典的ASP IIS网站设置为用于集成安全性的域帐户来运行。


0
投票

要使ASP连接到数据库,请在IIS 6,目录安全->身份验证方法中的“启用匿名访问”下,将匿名访问帐户设置为具有数据库权限的AD帐户。


0
投票

我把头发扯了一段时间。然后我尝试创建一个Windows用户帐户,并在SQL Server中具有适当的权限,并在连接字符串中使用“ Integrated Security = SSPI”。它像魅力一样运作-无需广告:

© www.soinside.com 2019 - 2024. All rights reserved.