Browser Session inklusive SSL State zurücksetzen

Heutige Webapplikationen benötigen u.U. ein Logon mit unterschiedlichen User Credentials. Dies geschieht meistens auch in der Verbindung mit SSL. Es kann hier u.U. zu Problemen kommen weil entsprechende SSL States oder User Credentials ( Authentifizierungen ) über eine komplette Session hinweg erhalten bleiben.

Sollte man dennoch eine neue Session benötigen kann man dies wie folgt erreichen:

1)“Neue Session” aus dem IE Menü ( ALT Taste drücken ) heraus auswählen
Dies bewirkt, dass ein neues Fenster geöffnet wird und eine neue Session zur Verfügung steht

2) “Clear SSL State” aus dem Browser Interface ( Tools –> Internet Options –> Content –> “Clear SSL state” )
Dies löscht ausschließlich den aktuellen SSL Cache. Beachten sollte man, dass dies eine globale Funktion hat. D.h. alle momentan offenen Browser Sessions die eine SSL Verbindung aufgebaut haben sind von dieser Funktion betroffen.

3) JavaScript Kommando
Das folgende Script bewirkt das Zurücksetzen der aktuellen Browser Session. Dies beinhaltet auch den “SSL state” jedoch nur für die Instanz die den entsprechenden Code ausführt. Dies ist ein klarer Unterschied zu Punkt 2.

document.execCommand('ClearAuthenticationCache');

Generell gilt übrigens die Aussage, dass jedes Tab im Internet Explorer in der gleichen Session läuft. Ab Internet Explorer 8 hat man lediglich die Möglichkeit über die Registry zu verhinden, dass auch ein neu geöffnetes Fenster in einer bereits vorhandenen Session gestartet wird. Der entsprechende Registry Eintrag lautet:

HKCU\Software\Microsoft\Internet Explorer\Main\FrameMerging

0 – disable frame merging
1 – enable frame merging (default)

Man kann den Internet Explorer auch gleich mit einem entsprechenden “Command line switch” starten. Dies Auswirkungen sind identisch mit FrameMerging, allerdings hat dies dann keinen globalen Effekt mehr:

IEXPLORE.EXE -NoFrameMerging. Es wird auf jeden Fall eine neue Session erstellt, egal wie die Default Einstellung lautet

IEXPLORE.EXE -FrameMerging. Es wird versucht eine bereits vorhandene Session weiter zu verwenden, , egal wie die Default Einstellung lautet