next up previous contents
Nächste Seite: Aktualisierung von Benutzern Aufwärts: Implementierung Vorherige Seite: Übersicht des Verwaltungssystems   Inhalt

Einrichtung von neuen Benutzern

\includegraphics[width=1\textwidth]{Bilder/newuser.eps}

Wählt man in der Startseite die Option Neue Benutzer einrichten, wird das Skript newuser.php aufgerufen. In dieser Datei handelt es sich im wesentlichen ein Formular. In diesem Formular soll man die Kennung für den Benutzer eingeben. Diese Kennung ist nämlich die Datenbankkennung, mit der der Benutzer sich bei der Datenbank anmelden kann. Die WWW-Kennung entsteht durch die Eingabe der Datenbankkennung und gefolgt mit der Zeichenkette ``_www". Nach der Festlegung der Kennung bestimmt man die Kennungsart durch eine Checkbox, d.h. welche Kennungen der Benutzer besitzen soll, die Datenbankkennung oder die WWW-Kennung oder die Beiden. Als Standardeinstellung wird es auf ``beide "gesetzt. Am Schluss wählt man eine Benutzerart von Mitarbeiter und Student aus. Wenn es sich um einen Studenten handelt, soll man die Matrikelnummer eingeben. Das Button Start führt die Datenübertragung zum Skript checkuser.php.

Es gibt in der Datenbank zwei Tabellen mitarbeiter und student, die für die Verwaltung von Benutzerinfodaten zuständig sind. Die Informationen wie beispielsweise der Vorname, Nachname, die Arbeitskennung von Mitarbeitern, Cipkennung, Matrikelnummer von Studenten usw. für alle Mitarbeiter am Lehrstuhl und diejenigen Studenten, die einen Fopra oder Diplomarbeit an diesem Lehrstuhl gemacht haben, werden in der entsprechenden Tabelle gespeichert.

Das Skript checkuser.php prüft zuerst mit der Verbindung zur Datenbank, ob die Benutzerinfodaten schon in diesen Tabellen eingegangen sind. Wenn es nicht der Fall ist, unterbricht es das Programm, gibt eine Warnung und eine Eingabe des Links, der zur Eintragung dieser Daten führt, aus. Da es sich um eine andere Anwendung in der Datenbank handelt, wird ein neues Fenster eröffnet. Dort kann man durch entsprechende Tools die Benutzerinformation eintragen. Wenn man damit fertig ist, schließt man das Fenster und kehrt wieder zurück zu der Stelle, an der das Programm unterbrochen wurde. Durch das Anklicken des Buttons Weiter wird das Programm von sich selbst gestartet. Damit die von vorherigen Formular übertragenen Daten nicht verlierengehen, werden sie durch den Einsatz von versteckten(Hidden) Inputfeldern an sich neu mitgeschickt. Das Programm prüft nochmal die Infodaten. Falls sie jetzt in der Datenbank vorhanden sind, geht das Programm zum nächsten Schritt weiter.

In diesem Schritt wird die eingegebene Kennung überprüft, ob diese Kennung in der Datenbank bereits von anderen Benutzern besitzt oder reserviert wird. Die Datenbankkennung und WWW-Kennung unterscheiden sich nur von dem konstanten Suffix ``_www", d.h. wenn eine von der Beiden an einen Benutzter vergeben wird, wird die andere ausschließlich für diesen Benutzer reserviert, obwohl sie noch nicht durch den Befehl CREATE USER in der Datenbank eingetragen ist. Wenn es festgelegt wird, dass diese Kennung bereits von einem Benutzer besitzt oder reserviert wird, bricht das Programm an dieser Stelle ab und man muss zum Anfang zurückkehren, um eine neue Kennung einzugeben. Falls diese Kennung noch frei ist, wird sie an diesen Benutzer vergeben.

Zur Vorbereitung für die Ausführung des CREATE USER Befehls werden alle zugehörigen Optionseingaben in einem Formular, das im Skript als nächsten Schritt enthalten ist, zum Auswählen tabellarisch dargestellt. Es gibt folgende Formularelemente: ein Optionsfeld (Inputfeld, wobei der Attributwert von Type gleich ``radio" ist.) für die Entscheidung, ob der Benutzer ein Superuser ist; ein Optionsfeld für die Entscheidung, ob der Benutzer neue Datenbank einlegen kann; ein Optionsfeld für die Entscheidung, ob die Gültigkeit des Passworts zeitlich begrenzt ist. Wenn die Option Ja gesetzt wird, stehen zwei Auswahlboxen, die von den geschachteten < OPTION>-Tags in <SELECT>, zur Verfügung. Die erste besteht aus Zahlen von (1 bis 9), die Zweite besteht aus Zeiteinheiten (Woche, Monat, Jahr), damit eine Zeitspanne dargestellt werden kann. Die alle drei Optionsfelder werden auf NEIN als Standardeinstellung gesetzt; es gibt noch eine Checkbox, die zur Entscheidung für die Gruppenmitgliedschaft dient. Die sämtlichen Gruppennamen in der Datenbank werden angezeigt, durch Anklicken der entsprechenden Kästchen werden eine oder mehrere Gruppen ausgewählt. Aus Sicherheitsgründen erfolgt die Eingabe eines Passworts im letzten Schritt vor der Ausführung des CREATE USER Befehls. Sind alle Entscheidungen getroffen, kann man per Button Weiter zu dem Skript zusammenfsg.php gelangen.

Hier werden alle Daten, nämlich die Benutzerinfodaten, die als Hidden-Variablen mitgeschickt werden und die Optiondaten für den CREATE USER-Befehl, zusammengefasst. Man hat deswegen die letzte Gelegenheit vor der Befehlausführung, um die Eingabedaten zu überprüfen. Wenn alle Daten mit der eignen Vorstellung übereinstimmen, gibt man ein Passwort für die Datenbankkennung ein. Durch Anklicken des Buttons Bestätigen gelangt man zu createuser.php.

In diesem Skript werden alle Hidden-Variablen sowie das übertragene Passwort ausgewertet und zu einem komplexen CREATE USER-Befehl für jede ausgewählte Kennung formuliert. Für WWW-Kennung wird ein zufallsgeneriertes, 16 zeichenlanges Passwort eingesetzt. Nach der Formulierung werden die Befehle zu der Datenbank gesendet, dort ausgeführt. Nach der erfolgreichen Ausführung entsteht der neue Benutzer in der Datenbank. Wird eine WWW-Kennung frisch eingerichtet, wird die Datei /proj/www/pcheger3/Port443/etc/.dbmap mit einer neuen Zeile von WWW-Kennung:Vorname Nachname:Passwort aktualisiert, damit man ein Zertifikat für diese Kennung ausstellen kann.


next up previous contents
Nächste Seite: Aktualisierung von Benutzern Aufwärts: Implementierung Vorherige Seite: Übersicht des Verwaltungssystems   Inhalt
Zhongshi Wang 2002-04-11