Safari 7은 HTTP 인증을 사용하여 인트라넷에 연결할 수 없습니다


9

실제 HTTP 요청에 대한 새로운 정보는 아래 업데이트를 참조하십시오.

그래서 10 월에 새 직장을 시작했습니다. 주로 Windows 상점이며 IIS 및 Active Directory를 사용하여 많은 내부 작업을 수행합니다. 에 인트라넷 사이트가 intranet.companyname.com있습니다.

Mavericks의 Chrome에서 거기에 갈 때 HTTP 인증 드롭 다운이 예상됩니다.

Chrome의 기능  이것은 내가 사파리에서 얻어야 할 종류입니다.

사용자 이름과 비밀번호를 입력 할 수 있습니다. Active Directory는 그리 빠르지 않지만 내가 사용 msgd중인 Active Directory 도메인 인 것 같아서 입력 msgd\lheidbreder하고 비밀번호를 입력하면 Chrome에 성공적으로 로그인 할 수 있습니다.

10 월에 돌아와서 Safari에서 처음 시도했을 때 이상한 행동을했습니다. 나는 암호를 보았지만 자격 증명을 넣을 때 작동하지 않았습니다. 정확히 한 일이 기억 나지 않습니다.

그러나 첫 번째 시도 후 그리고 그 이후로 시도 할 때마다 intranet.companyname.comSafari는 빈 화면을 표시합니다.

인트라넷에 연결하려고 할 때 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==

광고 인피니 엄을 반복하십시오 .


intranetKeychain Access에서 일치하는 모든 항목을 삭제하고 전체 캐시 / 쿠키를 지우 려고 시도 하여 원래 이상한 동작을 복원 할 수 있는지 확인했지만 작동하지 않았습니다.

어떤 종류의 펑키 도메인 작업이 진행되고 있습니까? 이것을 진단하기 위해 다른 무엇을 할 수 있습니까?


키 체인 문제 대신 쿠키와 관련이있을 수 있습니다. Safari 환경 설정 패널의 "개인 정보"섹션에서 제거 할 수 있습니다.
Kent

아니. 아래 답변에 댓글을 달았습니다. 캐시, 쿠키, 모든 것을 지우고 똑같은 일을합니다. HTTP 인증 팝업이 나타나야 쿠키가 쿠키와 직접 관련이 있다고 생각하지 않습니다.
75 번째 트롬본

임의의 생각 ... 당신은 또한 iCloud 키 체인을 확인 했습니까 (키 체인을 iCloud에 연결하는 경우)? 키 체인 접근에는 로그인 키 체인과 iCloud 키 체인에 대한 별도의 항목이 있습니다 .
ithos67

좋은 생각이지만이 컴퓨터에서 iCloud Keychain을 끄고 어떤 경우든지 Keychain Access에서 검색하면 사용 가능한 모든 키 체인을 검색합니다.
75 번째 트롬본

1
도움이되지 않는다는 것을 알고 있지만 Safari 7.0.4 및 인트라넷 SharePoint에서 정확히 동일한 문제가 있음을 발견했습니다. Chrome 및 Firefox와 잘 연결할 수 있지만 설명에 따라 Safari가로드를 시작한 다음 자리에 앉습니다. 매우 성가신.
nemesys 2016 년

답변:


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- 인증 헤더가 하나만 있습니다.

WWW-Authenticate: NTLM

Safari의 답변은 다음과 같습니다.

Authorization: NTLM TlRMTVNTUAABAAAAB4IIAAAAAAAAAAAAAAAAAAAAAAA=

이것은 잘 작동합니다. 기본적으로 협상은 Safari에서 중단 된 것으로 보이며 서버가 우선 협상을 표시하여 협상을 먼저 보내므로 Safari는이를 시도하여 무한 루프에 들어가 NTLM으로 다시 돌아 가지 못하게합니다.

따라서 서버 관리자가 인증 설정에서 협상을 끄도록 설득 할 수 있으면 문제가 해결 될 수 있습니다.

Firefox가 NTLM 외에 협상을 제공하는지 여부에 관계없이 Firefox가 "Authorization : NTLM ..."헤더를 전송한다고 덧붙일 수 있습니다. 아마도 협상은 Firefox에서 구현되지 않았습니다.


최신 정보

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에서 언급 한대로 cifs 또는 smb 볼륨이 마운트 된 Safari 7.0.6 (9537.78.2)에 여전히 존재합니다.


정보에 대해서 감사드립니다. 공식 버그 보고서를 Open Radar에 복사 하고 여기에 연결하는 것을 고려해야 합니다.
75 번째 트롬본

1
이 문제는 OS X 10.11.5에서 해결 된
클로스 Jørgensen은을

3

Safari 7.0.5에는 여전히 문제가 있습니다. 파인더가 SMB :( 또는 CIFS :)를 통해 네트워크 리소스를 공유하면 인증이 중단됩니다. 연결된 모든 네트워크 볼륨이 마운트 해제되면 Safari는 올바른 인증을 재개합니다.

회귀 :

  1. 요세미티 10.10.1 / Safari 8.0.2에 있음
  2. 엘 캐피 탄 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로 업그레이드하지 않았습니까? 도메인 자격 증명 (인트라넷 \ 'blank')없이 인트라넷에 로그인하려고합니다. domain \ username을 사용해야합니다. 나는 이것이 실망 스러울 수 있음을 이해할 수 있지만 사파리에서 인증이 누락 된 것 같습니다.

몇 초 만에 통나무가 날아갑니다.

Firefox는 훌륭하게 작동하는 것 같습니다.


1
"몇 초만에 통나무를 날려 버릴 것입니다."— 정말요? Console.app에 아무것도 기록하지 않습니다. 어떤 로그를 작성합니까?
75 번째 트롬본

우리는 로깅을 위해 Solarwinds를 사용합니다. 그러나 인트라넷 서버의 시스템 로그에 충돌합니다.
Daniel

1

이것은 오래 걸릴 수 있지만 다른 서비스에 로그인하여 Kerberos 티켓이있는 경우 Safari에서 해당 티켓을 사용하려고 할 수 있습니다.

/ System / Library / CoreServices / Ticket Viewer.app를 열어 Kerberos 티켓이 있는지 확인하십시오. 그렇다면 티켓, 아이디 제거를 클릭하고 다시 시도하십시오.

또는 아무 것도 표시되지 않으면 ID 추가를 사용하여 Safari에서 작동하는지 확인하십시오.

파이어 폭스와 크롬은 Kerberos를 사용하지 않습니다. 그렇지 않기 때문에 자격 증명을 묻는 메시지가 별도로 표시됩니다.


1
거기에 아무것도 나열되어 있지 않으며 자격 증명을 입력하려고하면 "잘못된 비밀번호"라고 표시됩니다.
75 번째 트롬본

1
티켓을 추가 할 때 msgd \ lheidbreder를 사용자 이름으로 사용하고 있습니까?
가연성

1
그렇습니다.
75 번째 트롬본

0

키 체인은 좋은 생각 이었지만 충분히 멀지 않았습니다.

Safari에서 Safari메뉴 아래를 보면 이 항목을 Reset Safari...선택하면 많은 캐시가 지워집니다.

이제 개방 Safari> Preferences> Autofill및 해제 User names and passwords. 이제 Passwords나열된 비밀번호를 선택 하고 제거하십시오. 를 선택 Privacy하고 클릭하십시오 Remove All Website Data. Extensions확장을 설치 한 경우를 선택 하고 확장을로 변경하십시오 Off.

이제 가서 웹 사이트를 사용해보십시오. 시도한 후에 Privacy쿠키가 남아 Passwords있는지 확인하고 Safari가 암호를 저장했는지 확인하십시오.

솔루션에 더 가까이 갈 수 있습니다. 그 후에 어떻게되는지 알려주십시오. Chrome이 작동하면 작동하는 방식을 정확히 알고 싶습니다. 좀 더 스누핑이 필요할 수 있습니까?

낄낄 거림을 위해 URL을 시도하고 http://username:password@intranet.example.com/(비트를 분명히 바꾸십시오) 무슨 일이 일어나는지보십시오.


intranet.companyname.com사이트에 대한 비밀번호 나 쿠키는 없었지만 어쨌든 모두 지웠으며 예상대로 정확히 동일한 동작이 나타납니다. 내가 무엇을주의 수행 해야 지고있을 것이가 어디있을 거라고 경우 브라우저의 HTTP 인증 모달, 그래서, 그렇지 않은 쿠키, 키 체인 접근에있을 것입니다.
75 번째 트롬본

1
나에게 올 때 조금 더 추가했습니다.
Tony Williams

1
해당 URL 형식을 시도해도 아무런 변화가 없습니다.
75 번째 트롬본

1
https://뿐만 아니라 사용해보십시오 .
Tony Williams

0

사무실에서도 비슷한 문제가있었습니다. 핵심은 내 DNS 조회에서 로컬 (회사 / 인트라넷) 사이트가 DNS 주소를 찾기 위해 외출하지 않도록하는 것입니다. 그것은 내 시스템이 프록시로 나가고 일정한 로그인 화면을 얻고 싶어하는 원인이었습니다. 무슨 일이 있었는지 내 intranet.company.com의 URL에 대한 요청이 프록시 서버에서 가져 와서 웹으로 전송되었습니다. 기본 웹 서버는 회사 IP를 통해 연결하고 프록시에 의해 제거 된 자격 증명을 찾고 응답한다는 것을 알 수 있습니다 ...

기본적으로 인트라넷 사이트가 프록시로 전송되지 않았는지 확인하면 문제가 해결되었습니다. 크롬을 기본 브라우저로 만드는 것 외에도 ...


0

사용 티켓 Viewer.app을 , /System/Library/CoreServices/Ticket Viewer.app그리고 새로운 티켓을 추가 할 수 있습니다.

새 티켓에서 인트라넷 URL 인증을 위해 사용자 이름과 비밀번호를 사용하십시오.


1
위에 표시된 것처럼 해당 앱에서 새 티켓을 추가하려고 할 때마다 잘못된 사용자 이름 / 암호 조합이 있음을 알려줍니다. 나는 lheidbreder그리고 msgd\lheidbreder내 사용자 이름으로 모두 시도했습니다 . 불운.
75th 트롬본

이것은 실제로 나를 위해 일했습니다. 도메인 암호를 사용하여 인트라넷이있는 도메인의 ID를 추가해야했습니다 (예 : 'domainusername @ workdomain').
tjeerdhans 2016 년

0
  1. Mac에서 새로운 사용자를 만듭니다.
  2. 이 새로운 사용자로 전환하십시오. 현재 세션을 열어 둔 상태에서이 작업을 수행 할 수 있습니다.
  3. Safari를 시작하십시오. 버진 사파리입니다.
  4. 사이트에 연결하십시오. 일반적으로 인증 대화 상자가 나타납니다.

0

이것은 도움이 될 수도 있고 아닐 수도 있지만 내가 아닌 다른 smb 공유에 연결하면 OS 10.9.2를 실행하는 Safari 7.0.3에서 인증 창이 사라집니다.

내 활성 디렉토리 로그인 및 비밀번호에서와 같이 자신을. 활성 디렉토리 서버에 바인딩되어 있습니다.

바인딩되지 않은 컴퓨터에서 이것을 테스트하지 않았습니다. Chrome과 FireFox도 테스트했으며 이러한 앱에는 아무런 문제가 없습니다. Aurora는 더 이상 작동하지 않습니다.

다른 사용자가 편집 :

이것이 문제의 원인 인 것 같습니다. 이것은 이제 Mavericks를 실행하고 Yosemite를 실행하는 비 바운드 시스템으로 테스트되었습니다. SMB 공유에 연결하면 Safari가 더 이상 인증 대화 상자를 표시하지 않습니다. Mavericks에서는 SMB 공유에서 연결을 끊 자마자 대화 상자가 표시되고 회사의 Sharepoint 2013 인트라넷 사이트에 로그인 할 수 있습니다. Sharepoint 2007 또는 다른 인트라넷 사이트에 문제가 없습니다.

요세미티에서는 최대 2 개의 SMB 공유에 연결할 수 있으며 Safari는 계속 작동합니다. 3 개 이상의 SMB 공유에 연결되어 있으면 문제가 나타납니다. 공유 수인지 또는 다른 공유에 상황에 영향을 줄 수있는 다른 권한이 있는지는 확실하지 않습니다. 그면에서 좀 더 엄격한 테스트를해야합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.