Dieses Kapitel behandelt die folgenden Themen:
Der Natural Web I/O Interface Client ist eine Java EE-basierte Anwendung. Um die Installation zu vereinfachen, ist der Zugriff auf diese Anwendung standardmäßig nicht gesichert. Möglicherweise möchten Sie jedoch den Zugriff auf bestimmte Teile der Anwendung auf bestimmte Benutzer beschränken. Ein wichtiges Beispiel hierfür ist das Konfigurationstool, mit dem Sie die Natural-Sitzungsdefinitionen und die Protokollierungskonfiguration des Natural Web I/O Interface Client ändern können. Ein weiteres Beispiel ist die Natural-Anmeldeseite.
Dieses Kapitel behandelt nicht alle Aspekte der JAAS-basierten Security. Es enthält jedoch ausreichende Informationen, um die vorkonfigurierten Security-Einstellungen des Natural Web I/O Interface Client zu aktivieren und an Ihre Anforderungen anzupassen.
Die Security wird in der Datei web.xml konfiguriert. Diese Datei befindet sich im folgenden Verzeichnis:
<tomcat-install-dir> /webapps/natuniweb/WEB-INF
Bei der Bearbeitung und Änderung der Konfigurationsdatei web.xml ist größte Sorgfalt geboten. Nach einer Änderung muss der Anwendungsserver neu gestartet werden.
Bearbeiten Sie die Datei web.xml und suchen Sie den Abschnitt, der mit "Uncomment the next lines to add security constraints and roles." kommentiert ist. Entfernen Sie die Kommentare aus diesem Abschnitt, indem Sie die unten fett gedruckten Kommentarzeichen entfernen:
<!-- Uncomment the next lines to add security constraints and roles. -->
<!--
<security-constraint>
<web-resource-collection>
<web-resource-name>Administration Tools</web-resource-name>
<url-pattern>/njxruntimetools/*</url-pattern>
</web-resource-collection>
...
<security-role>
<description>Administrator</description>
<role-name>nwoadmin</role-name>
</security-role>
-->
Die standardmäßig definierten Security-Beschränkungen sind nur Beispiele. Ein
<security-constraint>-Element enthält eine Reihe von
<web-resource-collection>-Elementen in Kombination
mit einem <auth-constraint>-Element. Das
<auth-constraint>-Element enthält einen
<role-name>. Das gesamte
<security-constraint>-Element beschreibt, welche
Rollen Zugriff auf die angegebenen Ressourcen haben.
Beispiel – Die folgende Definition legt fest, dass nur Benutzer mit der Rolle
nwoadmin Zugriff auf das Konfigurationstool haben:
<security-constraint>
<web-resource-collection>
<web-resource-name>Administration Tools</web-resource-name>
<url-pattern>/njxruntimetools/*</url-pattern>
</web-resource-collection>
<auth-constraint>
<role-name>nwoadmin</role-name>
</auth-constraint>
</security-constraint>
Im folgenden Abschnitt erfahren Sie, wo und wie die Rollen definiert werden.
Einige Zeilen weiter unten in der Datei web.xml befindet sich ein
Abschnitt <security-role>. Hier werden die Rollen
definiert, die in <security-constraint>-Elementen
verwendet werden können. Bei Bedarf können Sie zusätzliche Rollen definieren. Die
Zuordnung von Benutzern zu Rollen erfolgt außerhalb dieser Datei und wird häufig in
einer bereits auf Ihrer Site eingerichteten Benutzerverwaltung vorgenommen.
Beispiel:
<security-role>
<description>Administrator</description>
<role-name>nwoadmin</role-name>
</security-role>
In der Datei web.xml gibt es einen Abschnitt
<login-config>. Das einzige Element, das hier
möglicherweise angepasst werden muss, ist
<auth-method>. Sie können zwischen den
Authentifizierungsmethoden FORM und BASIC wählen. Bei der
formularbasierten Authentifizierung wird eine bestimmte Seite angezeigt, auf der sich
Benutzer, die auf eine zugangsbeschränkte Ressource zugreifen möchten, authentifizieren
können. Bei der Basisauthentifizierung wird der Webbrowser angewiesen, die Anmeldedaten
des Benutzers in einem eigenen Dialogfeld abzufragen.
Beispiel:
<login-config>
<auth-method>FORM</auth-method>
...
</login-config>
Geben Sie in der Datei tomcat-users.xml (die sich im Verzeichnis
conf befindet) die Rolle nwoadmin für einen
gewünschten Benutzernamen und ein Passwort an. Beispiel:
<user username="pepe" password="pepe123" roles="nwoadmin"/>
Ausführliche Informationen zur erforderlichen Realm-Konfiguration für Tomcat finden Sie unter http://tomcat.apache.org/tomcat-6.0-doc/realm-howto.html#UserDatabaseRealm .