Java 1.2 und nachfolgende Versionen bieten mit dem Klassen-Authentifizierer native Unterstützung für Authentifizierung an. Hierzu muss man nur eine Unterklasse anlegen und die Methode getPasswordAuthentication außer Kraft setzen. Diese Methode muss Benutzernamen und Passwort einholen und diese als PasswordAuthentication-Objekt zurückgeben.
Außerdem muss eine Instanz dieser Authentifizierer-Implementierung mit der Methode Authenticator.setDefault registriert werden. Danach ruft Java jedes Mal, wenn es auf eine geschützte Ressource trifft, diese getPasswordAuthentication-Methode auf.
Das Gute an dieser Methode ist, dass Java sich um alle niedrigen Details kümmert. Außerdem ist der Authentifizierer nicht auf HTTP-Authentifizierung beschränkt, sondern kann mit jedem Protokoll benutzt werden. Der Nachteil ist, dass es ihn nur auf Java 1.2 gibt. Listing D zeigt das gleiche Beispiel wie Listing C, jedoch mit der Authentifizierer-Klasse.
Fazit
Die Unterstützung von Proxy- und HTTP-Authentifizierung ist für alle Anwendungen, die mit Websites zu tun haben, unerlässlich. Wie hier gezeigt wurde, bietet Java 1.2 native Unterstützung dieser Authentifizierung an, und mit wenig Aufwand kann man jede Java-Version mit dieser Unterstützung ausstatten.
Die Implementierung in diesem Artikel zeigt die Grundzüge dieses Vorgangs auf, doch gibt es noch etliche Verbesserungsmöglichkeiten. (Den Quellcode für diesen Artikel gibt es hier.) So kann man z.B. die Unterstützung anderer Request-Typen ermöglichen, da diese Version nur mit GET funktioniert. Ein späterer Artikel wird dieses Thema wieder aufgreifen und weitere Verbesserungen aufzeigen.
Neueste Kommentare
1 Kommentar zu Java-Unterstützung für Proxies und HTTP-Authentifizierung
Kommentar hinzufügenVielen Dank für Ihren Kommentar.
Ihr Kommentar wurde gespeichert und wartet auf Moderation.
Links
Links gehen ins Leere.
Gruss