From ecd3bb45d9ca0ae9290a35ef3f542ade0618762c Mon Sep 17 00:00:00 2001 From: ulrich Date: Tue, 31 Jan 2017 17:47:50 +0000 Subject: [PATCH] Doku umgestellt --- readme.md | 67 ++++++++++++++++++++++++++++----- 1 files changed, 56 insertions(+), 11 deletions(-) diff --git a/readme.md b/readme.md index dd5333d..bff19b6 100644 --- a/readme.md +++ b/readme.md @@ -2,6 +2,22 @@ Eine Webanwendung zur Verwaltung von Benutzern eines Tomcat Web- und Applikationsservers in einer Derby-Datenbank. +## Funktionen + +Die Nutzerverwaltung stellt die folgenden Funktionen bereit + +- Anlegen neuer Benutzer +- Löschen von Benutzern +- Anlegen neuer Rollen +- Löschen von Rollen +- Rollen erteilen +- Rollen entziehen + +Die Bedienoberfläche passt sich an verschiedene Geräteausstattungen an (responsiv) und fügt sich neben den o.a. Funktionen in den Rahmen für Verwaltungsfunktionen einer WebBox ein. + +Weitere Informationen zur Nutzerverwaltung finden sich auf der [Produktseite] (http://uhilger.de/dev/Software/Nutzerverwaltung/Nutzerverwaltung) +...dort noch nicht auf dem neuesten Stand... + ## Webanwendung herstellen Zum Herstellen der Webanwendung wird ein Java Development Kit (JDK) benötigt, wie es z.B. von [Azul](http://azul.com) oder dem [OpenJDK-Projekt](http://openjdk.java.net/) erhältlich ist. In der hier folgenden weiteren Beschreibung wird der lokale Ablageort des Java Development Kits `$JDK` genannt. Desweiteren werden die folgenden Klassenbibliotheken benötigt @@ -70,18 +86,47 @@ Für den Zugriff auf den Datenbankserver muss sich der Datenbanktreiber `derbyclient.jar` aus der Distribution von Derby im Verzeichnis `$CATALINA_BASE/lib` befinden. -## Funktionen +## Nutzerverwaltung auf Tomcat einschalten -Die Nutzerverwaltung stellt die folgenden Funktionen bereit +Die Nutzerverwaltung wird per Deploy auf Tomcat installiert und kann anschließend von Benutzern mit der Rolle `nutzerAdmin` ausgeführt werden. Damit Tomcat die von der Nutzerverwaltung verwaltete Nutzerdatenbank verwendet, muss in der Datei `$CATALINA_BASE/conf/server.xml` folgende Änderung gemacht und Tomcat neu gestartet werden. -- Anlegen neuer Benutzer -- Löschen von Benutzern -- Anlegen neuer Rollen -- Löschen von Rollen -- Rollen erteilen -- Rollen entziehen -Die Bedienoberfläche passt sich an verschiedene Geräteausstattungen an (responsiv) und fügt sich neben den o.a. Funktionen in den Rahmen für Verwaltungsfunktionen einer WebBox ein. +vorher -Weitere Informationen zur Nutzerverwaltung finden sich auf der [Produktseite] (http://uhilger.de/dev/Software/Nutzerverwaltung/Nutzerverwaltung) -...dort noch nicht auf dem neuesten Stand... +``` + <Engine name="Catalina" defaultHost="localhost"> + + <Realm className="org.apache.catalina.realm.LockOutRealm"> + <Realm className="org.apache.catalina.realm.UserDatabaseRealm" + resourceName="UserDatabase"/> + </Realm> + + <!-- weitere Einträge ... --> +``` + + +nachher + +``` + <Engine name="Catalina" defaultHost="localhost"> + + <Realm className="org.apache.catalina.realm.LockOutRealm"> + <Realm className="org.apache.catalina.realm.JDBCRealm" + driverName="org.apache.derby.jdbc.ClientDriver" + connectionURL="jdbc:derby://localhost:1528/udb;user=dbadmin;password=changeit" + userTable="app.users" userNameCol="user_name" userCredCol="user_pass" + userRoleTable="app.user_roles" roleNameCol="role_name" > + <CredentialHandler className="org.apache.catalina.realm.MessageDigestCredentialHandler" algorithm="sha-256" /> + </Realm> + </Realm> + + <!-- weitere Einträge ... --> +``` + +**Bitte beachten**: Ab Version 8.5 von Tomcat wurde die Verschlüsselung auf SHA-256 umgestellt. Dies muss dem JDBCRealm mit dem oben aufgeführten CredentialHandler vermittelt werden. + +## Verschlüsselung von Kennworten + +Die Nutzerverwaltung legt Kennworte verschlüsselt in der Datenbank ab. Standardmäßig wird dafür die Klasse `RealmBase` von Tomcat verwendet. Damit innerhalb der Nutzerverwaltung auch andere Mechanismen verwendet werden können, wird die Schnittstelle `de.uhilger.um.Digester` verwendet. Die Klasse `de.uhilger.um.TomcatDigester` implementiert diese und setzt dort die zuvor erwähnte Klasse `RealmBase` von Tomcat ein. + +Im Deployment Descriptor `$UM/web/WEB-INF/web.xml` ist der Context Parameter `digester` hinterlegt und standardmäßig auf `de.uhilger.um.TomcatDigester` eingestellt. Soll eine andere Form der Verschlüsselung genutzt werden, kann dies mit einer eigenen Implementierung der Schnittstelle `de.uhilger.um.Digester` erreicht und entsprechend im Deployment Descriptor umkonfiguriert werden. \ No newline at end of file -- Gitblit v1.9.3