Dieser Artikel beschreibt, wie Sie eine Anwendung migrieren, die mit formularbasierter Anmeldung und
Servletfiltern ohne die Klasse CustomLoginServlet arbeitet.
Vorbereitende Schritte
Die Klasse CustomLoginServlet wurde in
WebSphere Application Server Version 5 als veraltet gekennzeichnet. Anwendungen, die die Klasse CustomLoginServlet
für die Authentifizierung verwenden, müssen jetzt die formularbasierte Anmeldung nutzen. Bei der formularbasierten Anmeldung
können Darstellung und Funktionsweise der Anmeldeanzeige
gesteuert werden. Sie können eine Anmeldeseite angeben, die angezeigt wird, um die Benutzer-ID und das Kennwort
abzufragen. Sie können auch eine Fehlerseite angeben, die beim Scheitern der Authentifizierung
angezeigt wird.
Falls Anmeldeseite und Fehlerseite für die Implementierung von
CustomLoginServlet nicht ausreichen, verwenden Sie Servletfilter. Servletfilter
können Anforderungen und Antworten abfangen, um die darin enthaltenen Informationen umzusetzen oder
zu verwenden. Einem Servlet oder einer Gruppe von Servlets werden mehrere Servletfilter
zugeordnet.
Sie können Servletfilter auch JSP-Dateien und HTML-Seiten
zuordnen. Alle zugeordneten Servletfilter werden vor dem Servlet aufgerufen.
Jeder Web-Container, der
der Servletspezifikation 2.3 entspricht, unterstützt sowohl die formularbasierte Anmeldung als auch
Servletfilter. Ein Servlet mit Anmeldeformular führt die Authentifizierung durch. Die
Servletfilter erweitern dann die Authentifizierung oder prüfen bzw. protokollieren Informationen.
Wenn Sie
für die Vor- und Nachbereitung der Anmeldung (pre-login und post-login) Servletfilter verwenden möchten,
können Sie die Filter für das Anmeldeformular oder für den URL
/j_security_check konfigurieren.
Der URL j_security_check wird vom Anmeldeformular
mit dem Parameter j_username für den Benutzernamen und dem Parameter
j_password für das Kennwort übergeben. Ein Servletfilter könnte den Benutzernamen und das Kennwort
für eine weitergehende Authentifizierung oder andere spezielle Aufgaben verwenden.
Vorgehensweise
- Entwickeln Sie eine formularbasierte Anmeldeseite und eine Fehlerseite für die Anwendung.
Nähere Einzelheiten finden Sie im Artikel Anmeldung über eine Webanwendung anpassen.
- Entwickeln Sie eine formularbasierte Anmeldeseite und eine Fehlerseite für die Anwendung.
Lesen Sie die Informationen zum Sichern von Webanwendungen mit einem Assembliertool.
- Entwickeln Sie Servletfilter, falls vor und nach der Authentifizierung per Anmeldeformular zusätzliche Verarbeitungsschritte
erforderlich sind.
Nähere Einzelheiten finden Sie im Artikel Servlet-Filter für die Verarbeitung von Anmeldeformularen entwickeln.
- Konfigurieren Sie die im vorherigen Schritt entwickelten Servletfilter für
den URL des Anmeldeformulars oder den URL /j_security_check.
Verwenden Sie zum Konfigurieren der Filter ein Assemblier- oder
Entwicklungstool wie Rational Application Developer. Nachdem Sie die Servletfilter konfiguriert haben, befinden sich in der Datei web-xml zwei Zeilengruppen. Die
erste Gruppe enthält die
Servletfilterkonfiguration, den Servletfilter und die Implementierungsklasse des Filters. Die zweite Gruppe enthält
den Abschnitt mit der Filterzuordnung und die Zuordnung des Servletfilters zu einem URL.
Weitere Informationen finden Sie im Artikel
Servlet-Filter für formularbasierte Anmeldeverarbeitung konfigurieren.
Ergebnisse
Nach dieser Migration nutzt die Anwendung die formularbasierte Anmeldung und Servletfilter,
ohne die Klasse CustomLoginServlet zu verwenden.
Nächste Schritte
Die Klasse CustomLoginServlet wurde in der neuen Anwendung durch formularbasierte Anmeldung und Servletfilter ersetzt.
Servletfilter werden
außerdem für eine weitergehende Authentifizierung sowie für Prüfung und Protokollierung genutzt.