Migration von der Klasse CustomLoginServlet auf Servletfilter

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

  1. Entwickeln Sie eine formularbasierte Anmeldeseite und eine Fehlerseite für die Anwendung.

    Nähere Einzelheiten finden Sie im Artikel Anmeldung über eine Webanwendung anpassen.

  2. Entwickeln Sie eine formularbasierte Anmeldeseite und eine Fehlerseite für die Anwendung.

    Lesen Sie die Informationen zum Sichern von Webanwendungen mit einem Assembliertool.

  3. 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.

  4. 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.

Symbol, das den Typ des Artikels anzeigt. Taskartikel



Symbol für Zeitmarke Letzte Aktualisierung: 25.05.2016
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tsec_migrateservlet
Dateiname:tsec_migrateservlet.html