Safari 7无法使用HTTP身份验证连接到Intranet


9

有关在幕后进行的实际HTTP请求的新信息,请参见下面的UPDATE。

所以我在十月份开始了新工作。它主要是Windows商店,他们使用IIS和Active Directory来存储大量内部信息。他们在拥有一个Intranet网站intranet.companyname.com

在Mavericks上的Chrome中,当我去那里时,我得到了预期的小HTTP身份验证下拉列表:

Chrome的功能; 这是我应该在Safari中获得的东西

在这里可以输入我的用户名和密码。我对Active Directory的了解不是很迅速,但是我想我所在的msgd是Active Directory域,因此我输入msgd\lheidbreder了密码,然后就可以在Chrome中成功登录了。

早在十月份,我第一次在Safari中尝试此操作时,我就出现了一些奇怪的行为。例如,我看到了密码,但是当我输入凭据时,密码没起作用。我不记得它到底做了什么。

但是在第一次尝试之后,以及自那时以来的每次尝试,当我尝试转到时intranet.companyname.com,Safari都会显示一个空白屏幕:

当我尝试连接到Intranet时,Mavericks上的Safari 7会做什么

屏幕没有变化,进度条占满了大约20%并停留在那里。


更新

我运行了一个应用程序来监听HTTP请求,然后我发现这是在幕后进行的。不只是坐在那里 Safari实际上每秒几乎请求该页面1000次,并且每次都会显示401错误和标题为“您无权查看此页面”的HTML错误页面。

在一次尝试加载的示例请求中,Safari发送了以下Authorization标头:

Negotiate YEgGBisGAQUFAqA+MDygDjAMBgorBgEEAYI3AgIKoioEKE5UTE1TU1AAAQAAAAUCiGIAAAAAGAAAAAAAAAAYAAAABgGwHQ8AAAA=

服务器使用以下WWW-Authenticate标头进行响应:

Negotiate oYIBIzCCAR+gAwoBAaEMBgorBgEEAYI3AgIKooIBCASCAQROVExNU1NQAAIAAAAOAA4AOAAAAAUCiWKPhp0o8/Y/9gAAAAAAAAAAvgC+AEYAAAAFAs4OAAAAD0EAUgBJAFMAVwBFAEIAAgAOAEEAUgBJAFMAVwBFAEIAAQAMAE4ARQBXAFcARQBCAAQAKgBhAHIAaQBzAHcAZQBiAC4AYQByAGkAcwB0AG8AdABsAGUALgBuAGUAdAADADgATgBFAFcAVwBFAEIALgBhAHIAaQBzAHcAZQBiAC4AYQByAGkAcwB0AG8AdABsAGUALgBuAGUAdAAFACoAYQByAGkAcwB3AGUAYgAuAGEAcgBpAHMAdABvAHQAbABlAC4AbgBlAHQAAAAAAA==

在下一个请求时,Safari发送相同的Authorization标头,然后服务器以略有不同的WWW-Authenticate标头响应:

Negotiate oYIBIzCCAR+gAwoBAaEMBgorBgEEAYI3AgIKooIBCASCAQROVExNU1NQAAIAAAAOAA4AOAAAAAUCiWLa6vytPOG0owAAAAAAAAAAvgC+AEYAAAAFAs4OAAAAD0EAUgBJAFMAVwBFAEIAAgAOAEEAUgBJAFMAVwBFAEIAAQAMAE4ARQBXAFcARQBCAAQAKgBhAHIAaQBzAHcAZQBiAC4AYQByAGkAcwB0AG8AdABsAGUALgBuAGUAdAADADgATgBFAFcAVwBFAEIALgBhAHIAaQBzAHcAZQBiAC4AYQByAGkAcwB0AG8AdABsAGUALgBuAGUAdAAFACoAYQByAGkAcwB3AGUAYgAuAGEAcgBpAHMAdABvAHQAbABlAC4AbgBlAHQAAAAAAA==

无限重复广告。


我尝试删除与intranet钥匙串访问匹配的所有内容,并清除我的整个缓存/ cookie,以查看是否可以恢复原始的怪异行为,但是没有用。

我有一些时髦的域名吗?我还能尝试诊断什么?


它可能与Cookie有关,而不是钥匙串问题。您可以尝试从Safari首选项窗格的“隐私”部分中将其删除。
肯特2014年

不。我评论了下面的答案;我清除了缓存,Cookie和所有内容,并且功能完全相同。我应该收到一个HTTP身份验证弹出窗口,所以我认为cookie并不直接与此有关。
第75长号2014年

随机的想法...您是否还检查了iCloud钥匙串(如果您将钥匙串链接到iCloud,那就是)?在“钥匙串访问”中,登录钥匙串和iCloud钥匙串有单独的条目。
ithos67

一个好主意,但是我在这台计算机上关闭了iCloud钥匙串,无论如何,在钥匙串访问中进行搜索会搜索所有可用的钥匙串。
第75长号2014年

1
我知道这不会帮到您,但我发现Safari 7.0.4和Intranet SharePoint存在完全相同的问题。我可以很好地连接Chrome和Firefox,但是Safari会按照您的描述开始加载,然后就坐在那儿。很烦人。
nemesys 2014年

Answers:


7

我可以确认在安装了所有当前Mac OS X Mavericks更新的情况下,Safari 7.0.2(9537.74.9)也遇到了相同的问题。(每秒具有与上述内容相同种类的内容的每秒数千个请求数据包。)

但是,尽管这可能或不能帮助原始张贴者,但我发现仅当Windows服务器启用了集成Windows身份验证(也称为NTLM身份验证)协商身份验证时,才会出现此问题。

然后,服务器发送以下两个标头:

WWW-Authenticate: Negotiate
WWW-Authenticate: NTLM

Safari会回复:

Authorization: Negotiate YEgGBisGAQUFAqA+MDygDjAMBgorBgEEAYI3AgIKoioEKE5UTE1TU1AAAQAAAAUCiGIAAAAAGAAAAAAAAAAYAAAABgGwHQ8AAAA=

然后从那里开始循环。

但是,如果未在服务器上启用协商身份验证,则将只有一个WWW-Authenticate标头:

WWW-Authenticate: NTLM

Safari的回复将类似于:

Authorization: NTLM TlRMTVNTUAABAAAAB4IIAAAAAAAAAAAAAAAAAAAAAAA=

这样就可以了。从本质上讲,似乎Safari中的Negotiate已损坏,并且由于服务器首先发送Negotiate,表示对此有偏好,因此Safari将尝试并进入一个无限循环,以防止其退回到NTLM。

因此,如果可以说服服务器管理员在身份验证设置中关闭“协商”,则可以解决此问题。

我可能会补充说,无论服务器是否除了NTLM之外还提供Negotiate,Firefox都会发送“ Authorization:NTLM ...”标头。据推测,在Firefox中未实现Negotiate。


更新资料

Safari 7.0.3(9537.75.14)仍然出现相同的问题。

我们先前在bugreport.apple.com上将该问题报告为错误,但是该错误已作为先前错误的副本被关闭,该错误的内容我们仍然无法看到,只是它仍被标记为已打开。

更新2

我可以确认hauns的发现,即身份验证适用于Safari 7.0.4(9537.76.4)。

更新3

Safari 7.0.5(9537.77.4)中再次出现此问题

更新4

正如hauns指出的那样,安装了CIF或SMB卷的Safari 7.0.6(9537.78.2)中仍然存在此问题。


谢谢(你的)信息。您应该考虑将您的官方错误报告复制到Open Radar并在此处链接到它。
第75长号2014年

1
这个问题已经解决了在OS X 10.11.5
克劳斯约根森

3

Safari 7.0.5仍然存在问题:如果finder通过SMB :(或CIFS :)共享网络资源,则身份验证将失败。卸载所有连接的网络卷后,Safari会恢复正确的身份验证。

回归:

  1. 出现在优胜美地10.10.1 / Safari 8.0.2中
  2. 出现在El Capitan 10.11.2 / Safari 9.0.2中
  3. 出现在Safari 10.0.1中

相应的Apple错误22990203仍处于活动状态。凡人都不允许看到它(cf.bugreporter.apple.com)

另请参阅:https : //discussions.apple.com/message/27727310#27727310


1

我们有同样的问题。因此,为什么我们还没有将Mac升级到Mavericks。似乎尝试在没有域凭据的情况下登录Intranet(Intranet \'空白')。它应该使用域\用户名。我可以理解,这可能令人沮丧,但似乎野生动物园中缺少身份验证。

我只要几秒钟,它就会吹走日志。

Firefox似乎运行良好。


1
“我[n]只需几秒钟,它就会吹走日志” –真的吗?我没有显示它在Console.app中记录任何内容。它会为您写入什么日志?
第75长号2014年

我们使用Solarwinds进行日志记录。但是,它会击中我们的Intranet服务器上的系统日志。
丹尼尔(Daniel)

1

这可能会花费很长时间,但是如果您拥有Kerberos票证(从登录到另一服务),则Safari可能正在尝试使用它。

打开/ System / Library / CoreServices / Ticket Viewer.app,查看是否有任何Kerberos票证。如果是这样,请单击故障单,然后删除身份,然后重试。

另外,如果未列出任何内容,请尝试使用“添加身份”并查看它是否适用于Safari。

我不认为Firefox和Chrome不使用Kerberos,这就是为什么它们会分别提示您输入凭据。


1
我那里没有列出任何东西,当我尝试输入凭据时,它显示“密码错误”。
第75长号2014年

1
添加票证时,您使用的是msgd \ lheidbreder作为用户名,对吗?
2014年

1
是的,我肯定是。
第75长号2014年

0

钥匙串是一个好主意,但您还远远不够。

在Safari中,如果您查看Safari菜单下的内容,将会看到“ Reset Safari...Select this”(选择此项),许多缓存将被清除。

现在打开Safari> Preferences> Autofill和关闭User names and passwords。现在,选择Passwords并删除那里列出的所有密码。选择Privacy并单击Remove All Website Data。选择Extensions,如果您安装了任何扩展名,请将扩展名切换到Off

现在去尝试您的网站。完成尝试后,看一下Privacy是否有剩余的cookie以及PasswordsSafari是否保存了密码。

这可能使您更接近解决方案。告诉我们之后的情况。如果Chrome可以正常运行,我很想知道它在做什么。可能需要更多监听吗?

只为咯咯地笑,请尝试使用URL http://username:password@intranet.example.com/(明显替换位),然后看看会发生什么。


intranet.companyname.com站点没有密码或cookie ,但是无论如何我都将其清除了,并且正如预期的那样,我得到了完全相同的行为。请注意,我应该得到的是浏览器的HTTP身份验证模式,因此,如果要放置在任何地方,它将位于Keychain Access中,而不是Cookie中。
第75长号

1
给我增加了一点。
Tony Williams

1
当我尝试该URL格式时,没有任何有用的事情发生。
第75长号2014年

1
也尝试一下https://
Tony Williams

0

我的办公室也有类似的问题。关键是要确保我的DNS查找将本地(公司/企业内部)站点排除在外,以寻找DNS地址。这是因为我的系统想要转到代理服务器并获得持续的登录屏幕。发生的事情是我对intranet.company.com的URL的请求已由代理服务器接收并发送到Web。主要的网络服务器会看到我正在通过公司IP连接,然后响应以寻找被代理剥离的凭据...我想。

基本上确保将Intranet网站没有发送到代理可以解决我的问题。加上将Chrome设为默认浏览器...


0

使用Ticket Viewer.app/System/Library/CoreServices/Ticket Viewer.app并添加一个新票证。

在新票证中,使用用户名和密码进行Intranet URL的身份验证。


1
如上所述,每当我尝试在该应用中添加新票证时,它都告诉我我的用户名/密码组合不正确。我已经尝试过lheidbredermsgd\lheidbreder以我的用户名登录;没运气。
第75号长号

这实际上为我工作。我必须使用我的域密码为我的Intranet所在的域添加标识,例如“ domainusername @ workdomain”。
tjeerdhans


0

这可能会或可能不会有帮助,但是我发现,如果我连接到除我以外的其他SMB共享,​​则会丢失运行OS 10.9.2的Safari 7.0.3中的“身份验证”窗口

我自己在我的活动目录中的登录名和密码。我绑定到活动目录服务器。

我尚未在非绑定计算机上对此进行测试。我还测试了Chrome和FireFox,这些应用程序没有问题。Aurora不再起作用。

由其他用户编辑:

这似乎是问题的原因。现在已经在运行Mavericks且现在运行Yosemite的非绑定计算机上对此进行了测试。连接到SMB共享后,Safari将不再显示身份验证对话框。在Mavericks中,一旦我断开与SMB共享的连接,就会出现该对话框,并且我可以登录到公司的Sharepoint 2013 Intranet网站。我在Sharepoint 2007或其他Intranet网站上没有问题。

在优胜美地,看来我最多可以连接两个SMB共享,​​并且Safari仍可以工作。如果我连接到三个或更多SMB共享,​​则表明问题出现了。我不确定是共享的数量还是不同的共享是否具有可能影响情况的不同权限。我需要在这方面做一些更严格的测试。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.