首页 > 解决方案 > SQL Server - Windows 身份验证

问题描述

我有 2 台服务器:

带有 SQL SERVER 2012 的 Windows Server 2008

带有 IIS 8 的 Windows Server 2008

我需要通过 IIS 服务器使用 php 应用程序从客户端机器登录到 SQL 服务器。

我阅读了很多文章并配置了所有文章,它可以工作,但我有一个问题 - 它只能在 IE 浏览器(或 EDGE)中正常工作,但不能在基于 Chromium 或 Firefox 的浏览器中正常工作。

如果我启动一次 IE,php 应用程序成功连接到 SQL 服务器,否则在非 IE 浏览器中我收到错误 NT AUTHORITY\ANONYMOUS LOGON。

我总是在 IIS 上成功登录(检查$_SERVER['REMOTE_USER'];

需要帮忙

标签: phpsql-serveriis

解决方案


IIS 需要将 Kerberos 票证传递给 SQL Server,此方案才能正常工作。IE 正在获取工作站会话票证,而 Firefox 正在协商它自己的身份验证(而不是 Kerberos)。

要在 Mozilla Firefox 中启用集成 Windows 身份验证 (IWA),您可以按照以下步骤操作:

  1. 打开火狐

  2. 在地址栏中,键入 about:config。在警告谨慎进行的提示下,同意继续。

  3. 配置页面加载后,在过滤器框中输入:network.automatic。您应该会看到 network.automatic-ntlm-auth.trusted-uris 的搜索结果

  4. 单击“确定”并重新启动 Firefox


推荐阅读