2017-03-16 4 views
0

IE11 Verwendung Ich erstelle eine Erhaltungs-Anforderungs-A ORT:IE11 - Losing My COOKIES: 302 von HTTP-Umleitung zu HTTPS

GET http://www.test.com/?documentId=ef746317-7711-4458-8873-a73700fc1b85 HTTP/1.1 
Accept: image/jpeg, application/x-ms-application, image/gif, application/xaml+xml, image/pjpeg, application/x-ms-xbap, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */* 
Accept-Language: en-US 
Accept-Encoding: gzip, deflate 
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.2; WOW64; Trident/7.0; .NET4.0E; .NET4.0C; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729) 
Connection: Keep-Alive 
Host: www.test.com 

Ich erhalte eine Umleitung mit 2 Cookies:

HTTP/1.1 302 Found 
Date: Wed, 15 Mar 2017 23:48:00 GMT 
Content-Type: text/html; charset=UTF-8 
Location: https://www.newSite.com/test/Edit/ef746317-7711-4458-8873-a73700fc1b85 
Set-Cookie: Auth=EAAAAIQfMoK32BNjBypXapcJppWc==; path=/; secure 
Set-Cookie: Auth=EAAAAN+xPT6eioV8LESTR6CViGIvc834gP==; path=/; secure 
Cache-Control: private, s-maxage=0 
Server: Microsoft-IIS/10.0 
X-AspNet-Version: 4.0.30319 
X-AspNetMvc-Version: 4.0 
X-Powered-By: ASP.NET 
P3P: CP="NOI ADM DEV PSAi COM NAV OUR OTR STP IND DEM" 
P3P: policyref="/w3c/p3p.xml", CP="IDC DSP COR IVAi IVDi OUR TST" 
Content-Length: 0 

IE scheint die Umleitung zu folgen und macht einen GET, aber wie Sie die Cookies nicht zurückschicken sehen:

GET https://www.newSite.com/test/Edit/ef746317-7711-4458-8873-a73700fc1b85 HTTP/1.1 
Accept: image/jpeg, application/x-ms-application, image/gif, application/xaml+xml, image/pjpeg, application/x-ms-xbap, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */* 
Accept-Language: en-US 
Accept-Encoding: gzip, deflate 
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.2; WOW64; Trident/7.0; .NET4.0E; .NET4.0C; .NET CLR 3.5.30729; .NET CLR 2.0.50727; .NET CLR 3.0.30729) 
Connection: Keep-Alive 
Host: www.newSite.com 

und dann Natürlich ist das 401:

HTTP/1.1 401 Unauthorized 
Content-Type: text/html 
Server: Microsoft-IIS/10.0 
X-Powered-By: ASP.NET 
Date: Wed, 15 Mar 2017 23:48:00 GMT 
Content-Length: 1293 
<HTML>Blah blah blah access denied error</HTML> 

Ich versuchte, die P3P-Header hinzugefügt IE zu zwingen, die Cookies in der Umleitung zu senden, aber keine Würfel. Ich habe gelesen, dass es ein Problem gibt, wenn der IE Cookies in der Weiterleitung sendet, wenn er von HTTP zu HTTPS wechselt, oder weil die "sicheren" Cookies über HTTP an den Browser zurückgeschickt werden, die bei der Weiterleitung an HTTP die verschiedenen Domänen und Drosseln sieht. Ich kann die Websites nicht ändern, da sie Anbieter sind, aber ich kann die 302 ändern, die zurück zu IE11 mit der Schnittstelle-Mittel-Ware gesendet werden, an der ich arbeite. Irgendwelche Gedanken darüber, wie ich IE dazu bringen kann, diese Cookies auf der Weiterleitung zurückzusenden?

Update 1: Ich habe Firefox 52, IE11 und Chrome ausprobiert. Kein Browser akzeptiert das 302 und sendet das zurück mit den Cookies. Jemand da draußen muss verstehen, wie Weiterleitungen mit Cookies funktionieren. Keine Antwort lässt mich fragen, ob diese Seite die richtigen Leute erreicht.

Antwort

0

Ich habe mein Problem mit einer Art Hack. Da der Browser Cookies in einer 302-Weiterleitung nicht weiterleiten würde, sende ich nur eine kleine Seite zurück, die den Beitrag für mich statt meiner Interface-Software erledigt.

<!DOCTYPE html> 
<html> 
<head> 
<title>Redirect</title> 
</head> 
<body> 
<form action="https://testAPI.test.com/" method="POST"> 
<input name="UserName" value="Test APIUser"/> 
<input name="UserEmail" value="[email protected]"/> 
<input name="PatientId" value="1d11eb2e-2606-485e-ad5d-a70c00daa37a"/> 
<input name="Timestamp" value="Mon, 20 Mar 2017 19:11:24 GMT"/> 
84c6-a7210111648b"/> 
<input name="Token" value="MRVp/pBRBJ08F8cYMavfL8 ="/> 
</form> 
<script language="javascript"> window.setTimeout('document.forms[0].submit()', 0);</script> 
</body> 
</html> 
Verwandte Themen