Java 1
  • Home
  • Tutorials
    • Hello World
      • Download
      • Installation unter Windows
      • Installation unter Linux
      • Das Hello World Programm
      • Mehr Java
    • Java Konsole
      • Java Konsole Testen
    • Basic Java
      • Java Programme
        • Die Klasse
        • Datentypen
        • Null
        • Casten
        • Operatoren
        • Kontrollstrukturen
        • Arrays
        • Aufgaben
      • Objektorientierte Konzepte
        • Hallo Fenster
        • Objekte einer Klasse
        • Vererbung
        • Interfaces
      • Alles über Klassen
        • Abstrakte Klassen
        • Methoden überschreiben
        • Super
        • Final
        • Innere Klassen
        • Anonyme Klassen
        • Enumerations
      • You're just an object
        • Sichtbarkeit
        • Druckdarstellung
        • Gleichheit
        • Klonen
        • Die Class
        • Serialisierung
    • Java Api
      • Dokumentation
      • Strings
      • Wrapper Klassen
      • System und Runtime
      • Math
      • Exceptions
      • IO
      • Sammlungsklassen
      • AWT und Swing
      • Alle Komponenten
      • Applets
      • Threads
      • Jar
      • Classpath
    • JSP und Servlets
      • Meine erste JSP
        • Downloads
        • Installation unter Windows
        • Installation unter Linux
        • Admin und Manager
        • Webapplication
      • JSP
        • Java Code in HTML einbinden
        • Das HTTP Request - Response Modell
        • Request und Response Objekte
        • Auswerten von Formulardaten
        • Aufgaben
      • Beans
        • Die Session
        • Weitere vordefinierte Objekte
        • Java-Beans
        • Beans programmieren
        • Java-Beans in JSP nutzen
        • Aufgaben
      • Servlets
        • Nutzen der Servlets
        • Servlets programmieren
        • Servlets auf dem Server einrichten
        • Servlets mit JSP
        • Servlets includen
        • Aufgaben
      • Webapplikation
        • Filter
        • Initialisierungsparameter
        • Error Pages
        • Passwortgeschützte Verzeichnisse
        • Bibliotheken nutzen
        • Eine Webapplikation deployen
        • Ausblick: Wie geht's weiter?
        • JSP-Tags Syntaxreferenz
        • Aufgaben
  • Code
    • Web
      • Datenbankverbindungen mit Tomcat
      • Texte richtig encoden
      • HTTPS mit Tomcat
      • HTML Encoden mit Javascript
    • Java
      • Print F
      • Ein generischer Poolbuilder
      • Native Bibliotheken
      • Unique Ids
    • Java FX
      • Balls
      • Hearts
      • Planner
    • Java ME
      • The Next Big Thing
    • System
      • Vi Kommandos
  • Sidemap
  • Impressum
  • Hilfe
Home > Tutorials > JSP und Servlets > Webapplikation > Passwortgeschützte Verzeichnisse
  • Home
  • Tutorials
    • Hello World
    • Java Konsole
    • Basic Java
    • Java Api
    • JSP und Servlets
      • Meine erste JSP
      • JSP
      • Beans
      • Servlets
      • Webapplikation
        • Filter
        • Initialisierungsparameter
        • Error Pages
        • Passwortgeschützte Verzeichnisse
        • Bibliotheken nutzen
        • Eine Webapplikation deployen
        • Ausblick: Wie geht's weiter?
        • JSP-Tags Syntaxreferenz
        • Aufgaben
  • Code
  • Sidemap
  • Impressum
  • Hilfe

Passwortgeschützte Verzeichnisse

Wir haben ja bereits Content vor neugierigen Usern durch Sessionobjekte und Filter geschützt. Dieses Verfahren ist zu empfehlen, wenn Sie eine Vielzahl von Usern mit unterschiedlichen Benutzernamen und Kennwörtern haben.

Wir lernen nun einen Passwortschutz kennen, der im Wesentlichen dem entspricht, was Sie bei Apache mit .htaccess machen können, also einen Zugriff für dem System bekannte User oder Gruppen von Usern. Bei diesem Verfahren sendet der Browser mit jedem Request einen Authorization-Header.

Die dem Tomcat bekannten User werden in der Datei CATALINA_HOME/conf/tomcat-users.xml gespeichert, was ungefähr so aussieht:

tomcat-users.xml



  
  
  

  
  

Wie Sie sehen, werden zunächst einige Roles, das sind im Grunde Usergruppen, definiert. Angegeben wird der Name, wobei die Namen hier Schall und Rauch sind. Die Definition der Rechte der roles geschieht implizit über die Rechte, die wir ihnen zuteilen. Die Rolle „admin“ hat hier also nicht mehr Rechte als die Rolle „tomcat“.

Es folgen dann einige Usernamen mit Passwort (im Klartext) und der Rolle, die man ihnen zubilligt. Sie können diese Einträge editieren und ihren Bedürfnissen anpassen; damit Änderungen wirksam werden, sollten Sie anschliessend den Server neu starten.

Passwortgeschützte Bereiche definieren wir im Deployment-Descriptor am Ende der Datei nach der error-page. Die Direktive nennt sich security-constraint:

/WEB-INF/web.xml



users

org.apache.catalina.UserDatabase

/WEB-INF/web.xml

 
    
      Protected Area
      /bsp/kap4/secret/*
    
    
       admin
    
  

Sie erkennen drei Element: Zunächst wird mit <resource-env-ref> der Bezug zu der oben gezeigten tomcat-useres.xml hergestellt. Die <web-resource-collection> beschreibt das geschütze Verzeichnis. Hier geben Sie einen obligatorischen Namen an sowie das Verzeichnis, das Sie schützen wollen. Das zweite Element auth-constraint nennt die role, die ein User haben muss, damit ihm Zutritt gewährt wird.

Als zweites konfigurieren wir den Login. BASIC ist die einfache Methode, die den Browser veranlasst, das bekannte Popup zur Abfrage von Username und Passwort zu öffnen. Der realm ist eine Bezeichnung des geschützten Bereichs, der dem User angezeigt wird:

WEB-INF/web.xm

     
         BASIC
         Unser Secret Bereich
     

Wenn Ihnen das zu spartanisch erscheint, können Sie auch eine JSP als Eingabeseite bestimmen. Ersetzen Sie dazu den <login-config> Eintrag durch:

WEB-INF/web.xml


    FORM
    
        /bsp/kap4/passwd.jsp
        /bsp/kap4/passwd_error.jsp
    

Das HTML Formular muss hierzu bestimmte Namen und Actionen ausführen. Bitte beachten Sie dazu: passwd.jsp passwd_error.jsp. Dieses Beispiel ist nicht installiert. Wenn Sie dieses Beispiel ausprobieren möchten, ersetzen Sie den login-conf -Eintrag in der web.xml durch den oben gezeigten, starten Sie den Server neu.

« Error Pages
Webapplikation
Bibliotheken nutzen »
Show/Hide Footer Actions

Kommentare:

Sie müssen angemeldet sein um eine Nachricht zu erstellen. Anmelden »
© 2012 Java 1. Alle Rechte vorbehalten.
Anmelden
concrete5 - open source CMS
Theme by Site5 / Mnkras.