每当我尝试访问经过 NTLM 身份验证的 Intranet 站点时,Safari 都会花费很长时间来处理,然后返回“服务器不可用”,或者如果站点允许,则加载而不进行身份验证。 我可以在 Firefox 和 Internet Explorer 中毫无问题地访问这些相同的网站。 这些站点托管在 IIS6 上,并使用 ASP、ASP.Net 1.1 或 ASP.Net 2.0 生成。
知道为什么 Safari 在这些网站上会卡住吗? 是否有任何解决方法可以让 NTLM 通过 Safari 正确进行身份验证?
更新:
在进一步使用它时,我确定如果我使用站点的 FQDN(即 http://mysite 不起作用,但 http://mysite .domain.prv 将起作用)。 不幸的是,由于项目的其他限制,这将行不通。
有谁知道为什么 FQDN 可以工作,但较短的名称却不行? 这是可以解决的问题还是“抱歉运气不好”?
更新2:
根据Wireshark数据包嗅探器,safari将SYN发送到正确的服务器IP地址。 内网服务器响应 SYN、ACK,safari 向其发送 ACK。 至此 safari 与服务器的通讯就结束了。 当尝试通过 FQDN 访问 Intranet 站点时,这三个数据包相同,但后面跟着一个 HTTP GET 请求,然后成功加载页面。
因为 Safari 连接到正确的 IP 地址,所以我很难相信 Safari 不支持 NetBIOS/WINS 名称。 此外,由于 safari 永远不会发送初始 GET 请求,因此 NTLM 数据包永远不会交换,因此我确信 NTLM 与此问题无关。
有谁知道 safari 对 NetBIOS/WINS 的支持状况吗?
Whenever I try to access a NTLM authenticated intranet site, Safari takes forever to process and then comes back with "The sever is unavailable" or if allowed by the site, loads with out authenticating. I can access these same sites with no problems in both Firefox and Internet Explorer. The sites are hosted on IIS6 and are being generated with either ASP, ASP.Net 1.1 or ASP.Net 2.0.
Any insight on why Safari choking on these sites? Are there any work-arounds to get NTLM to correctly authenticate with Safari?
Update:
In further playing with it I have determined that NTLM will work (with the page loading reasonably fast) if I am using the FQDN for the site (i.e. http://mysite doesn't work, but http://mysite.domain.prv will work). Unfortunately, this will not work due to other constraints on the project.
Does anyone know why the FQDN would work but the shorter name will not? Is this something that can be worked around or is it "Sorry out of luck"?
Update 2:
According to the Wireshark packet sniffer, safari sends a SYN to the correct severs IP address. The intranet sever responds with a SYN, ACK, to which safari sends an ACK. This is the end in communication between safari and the sever. When attempting to access the intranet site by FQDN these three packets were the same but were then followed by a HTTP GET request, which then successfully loaded the page.
Because Safari is connecting to the correct IP address, I find it hard to believe that Safari just doesn't support NetBIOS/WINS names. Additionally, because the NTLM packets are never exchanged as safari never sends the initial GET request, I'm certain that NTLM has nothing to do with this issue.
Does anyone know the status of safari's support of NetBIOS/WINS?
发布评论
评论(3)
在基于 Java 的 B2B 客户端的类似情况下,我成功地使用 http://ntlmaps.sourceforge.net/< /a> 遍历代理。
In a similar situation with a Java based B2B client, I was successful in using http://ntlmaps.sourceforge.net/ to traverse the proxy.
因为 NTLM 不是 Web 标准。 您不能指望任何给定的网络浏览器都支持它。
直到最近,只有 IE 才支持它。 并且 Firefox 的支持必须经过专门配置。
Because NTLM is not a web standard. You can't expect any given web browser to support it.
Until recently only IE supported it at all. And Firefox's support has to be specifically configured.
Firefox 始终能够遍历 NTLM 站点。 我知道,因为我一直在使用这个糟糕的自定义 ASP 解决方案和 SharePoint 网站来在我们的 Intranet 中使用……Firefox 是一个梦想。
Apple..修复 Safari kthx?
Firefox has always been able to traverse NTLM sites. I know because I'm stuck with this god awful custom ASP solution and SharePoint site to use in our intranet... Firefox is a dream.
Apple.. fix Safari kthx?