2017-04-20 117 views
-1

我有一个传统的ASP页面,当我浏览到它抛出错误“登录失败,用户NT AUTHORITY \ ANONYMOUS登录。用户'NT AUTHORITY ANONYMOUS LOGON'的ASP登录失败。 IIS 8.5

下面是这引发错误我的ASP测试页的代码:

<% 
Session.Timeout = 10 
Set dbConn=Server.CreateObject("ADODB.Connection") 

On Error Resume Next 
dbConn.Open "Provider=SQLOLEDB;server=<MyServer>;database=<MyDatabase>;Trusted_Connection=yes;Integrated Security=SSPI" 

for each errobj in dbConn.Errors 
    Response.write errobj.Number & "<br />" 
    Response.write errobj.Description & "<br />" 
next 

On Error Goto 0 
%> 

这是试图连接到SQL Server 2008数据库服务器的站点是设置使用具有访问数据库服务器的服务帐户的应用程序池有在.aspx.cs页面。代码库连接到数据库没有错误和类似的连接字符串,但传统的ASP页面出现这个错误。这只发生在我们已经部署到我们的QA服务器后,它在本地运行时没有错误。该网站设置为在匿名身份验证下运行,并禁用所有其他身份验证模式。

我想知道我可能需要在Web服务器上启用这些请求才能通过哪些设置。

+0

它能解决你吗? http://stackoverflow.com/a/10351155/7733724 看来你的项目不能匿名访问你的公共文件夹在生产中。 也可能与数据库有关,您需要在服务器数据库防火墙中建立规则或允许匿名。取决于你的服务器环境。 – Sam

+0

感谢您的链接,我尝试了web.config方法建议和applicationHost + web.config更改,但它仍然得到相同的错误。我将从防火墙的角度对其进行检查,但从理论上讲,它不应该是匿名的,因为我们正在使用Integrated Security,因此它应该通过我们的应用程序池高级设置中指定的服务帐户发送。 –

回答

-1

虽然看起来更线上,我发现这个计算器问题Classic ASP problem connecting to remote SQL Server database。推荐的答案适合我。问题是匿名页面发出的请求没有按照我们的意愿使用应用程序池标识。该选项要么更改此设置,要么更改连接字符串以使用sql认证用户。

+0

你为什么不自己接受这个答案?如果你自我解决,你可以这样做。 –

相关问题