399 Stimmen

Cookie blockiert/nicht gespeichert in IFRAME in Internet Explorer

Ich habe zwei Websites, sagen wir, sie sind example.com y anotherexample.net . Auf anotherexample.net/page.html Ich habe eine IFRAME SRC="http://example.com/someform.asp" . Dieser IFRAME zeigt ein Formular an, das der Benutzer ausfüllen und an http://example.com/process.asp . Wenn ich das Formular öffne (" someform.asp ") in einem eigenen Browser-Fenster, funktioniert alles gut. Allerdings, wenn ich lade someform.asp als IFRAME in IE 6 oder IE 7, werden die Cookies für example.com nicht gespeichert. In Firefox tritt dieses Problem nicht auf.

Zu Testzwecken habe ich eine ähnliche Einrichtung auf http://newmoon.wz.cz/test/page.php .

example.com verwendet Cookie-basierte Sitzungen (und es gibt nichts, was ich dagegen tun kann), also ohne Cookies, process.asp wird nicht ausgeführt. Wie kann ich den IE zwingen, diese Cookies zu speichern?

Ergebnisse des Schnüffelns des HTTP-Verkehrs: Bei der Antwort GET /someform.asp gibt es einen gültigen Set-Cookie-Header pro Sitzung (z. B. Set-Cookie: ASPKSJIUIUGF=JKHJUHVGFYTTYFY ), aber bei der Anfrage POST /process.asp gibt es überhaupt keinen Cookie-Header.

Edit3: einige AJAX+serverseitige Skripte sind anscheinend in der Lage, das Problem zu umgehen, aber das sieht sehr nach einem Bug aus, und es eröffnet eine ganz neue Reihe von Sicherheitslücken . Ich möchte nicht, dass meine Anwendungen eine Kombination aus Fehler und Sicherheitslücke verwenden, nur weil es einfach ist.

Bearbeiten: die Die P3P-Politik war die Hauptursache , vollständige Erklärung unten.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X