这是一个非常基础的问题,但诊断中确实可以从一些额外的帮助中受益。
我们有一个名为:服务器名称-产品
我们有一台运行 IIS 8.5 的 Web 应用服务器,名为:WEBAPPS-PROD
有一段时间,我们一直收到这样的登录失败通知:
用户登录失败'领域\WEBAPPS-PROD$'.[客户端:IP地址]
Web 服务器上有一些实时 Web 应用可以连接到该 SQL 服务器,但始终通过以下方式进行连接:
- 应用程序角色
- SQL 登录
- 用户的 Windows 身份验证
更奇怪的是,它似乎总是在一天中的同一时间运行,但我们没有在该服务器上安排服务或任务。
问题:
当然你不能进入我们的服务器,但只是寻求一般的诊断建议
- Web 服务器本身怎么可能调用数据库?它甚至不应该知道 Web 应用程序配置设置之外的 SQL 服务器的名称。
- 在什么情况下 Web 服务器会尝试以其自身身份连接到特定的 SQL 服务器?
- 我们如何添加某些内容来追踪此类调用,以便了解更多信息?
答案1
用户“DOMAIN\WEBAPPS-PROD$”登录失败。[客户端:IP_ADDRESS]
这是尝试进行身份验证的计算机对象。这告诉我有某个程序正在以非域帐户身份运行并尝试访问 SQL Server。
因为它是一个 Web 服务器,所以很可能是一个在使用 Windows 身份验证的池中运行且未与池所有者正确设置的 Web 应用程序,但它实际上可能有很多不同的东西。
你能做什么?
运行扩展事件或服务器端跟踪,查看哪个进程 ID(如果有)正在从 Web 服务器连接。您还可以使用 netstat 或 tcpview 等检查 Web 服务器端的开放 TCP 端口和进程 ID。
再次,有可能这是一个未正确配置的网络应用程序,但这应该可以帮助您找到它。