Bauen mit Microsoft - Benutzerverwaltung

Schritt 1: Startbedingungen

Startbedingungen für die Benutzerverwaltung

Zu Beginn dieser Übung haben wir eine Webseite, die bereits über eine Masterseite und eine Navigation verfügt. Zusätzlich hat die Webseite einen Ordner, der nur für bestimmte Benutzer freigegeben werden soll. Dieser Ordner heißt in diesem Beispiel „Geheim“. In dem Ordner „Geheim“ sind Webseiten enthalten, die nur für Personen zugänglich sein sollen, die Mitglied in der Gruppe „Mitglieder“ sind. Wie eine Masterseite erstellt wird, erfahren Sie von Siegfried, und die Navigation können Sie von Manuel lernen.

Schritt 2: Benutzerregistrierung hinzufügen

Eine neue WebForm über „Neues Element hinzufügen“ anlegen

Besucher der Webseite müssen als Erstes die Möglichkeit haben, sich zu registrieren. Registrieren bedeutet, dass die Benutzer ihre Daten hinterlegen und einen Benutzernamen und ein Kennwort festlegen. Dafür legen wir eine neue WebForm über „Neues Element hinzufügen“ an, der Name dieser WebForm soll „BenutzerRegistrierung.aspx“ lauten. In diese WebForm ziehen wir anschließend das Create UserWizard-Control aus der Toolbox. Dieses Control befindet sich in der Toolbox im Abschnitt „Anmelden“. Mit dem CreateUserWizard- Control kann sich ein Besucher bei der Webseite registrieren. Dazu muss er verschiedene Informationen hinterlegen.

Benutzerregistrierung hinzufügen

Schritt 3: Kennworterinnerung für vergessene Kennwörter

Da es immer wieder Benutzer gibt, die ihr Kennwort vergessen, benötigt eine gute Webseite auch die Möglichkeit, vergessene Kennwörter wieder zu ermitteln. Dazu wird meistens eine Frage gestellt, die man bei der Benutzerregistrierung angeben musste und die mit einer ganz bestimmten Antwort beantwortet werden muss. Diese Antwort musste man ebenfalls bei der Benutzerregistrierung hinterlegen.

Eine neue WebForm für vergessene Kennwörter anlegen

Für diese Kennworterinnerung legen wir eine neue WebForm mit dem Namen „Kennwort Vergessen.aspx“ an. In diese WebForm ziehen wir anschließend das Password Recovery- Control hinein.

Schritt 4: Benutzeranmeldung hinzufügen

Erst wenn ein Benutzer sich registriert hat und auch sein Kennwort kennt, kann er sich an der Webseite anmelden. Für die Anmeldeprozedur erstellen wir eine neue WebForm mit dem Namen „Login.aspx“. In diese WebForm ziehen wir das Login-Control aus der Toolbox.

Eine neue WebForm für die Anmeldeprozedur anlegen

Das Login-Control kann noch weiter angepasst werden. Über die Eigenschaften „CreateUser- Text“ und „CreateUserUrl“ vom Login-Control kann man einen Text z.B. „Neu registrieren“ und den Link zur „Benutzer Registrierung.aspx“-WebForm eintragen. Das Gleiche gilt für die Eigenschaften „Password Recovery Text“ und „Password Recovery URL“. Damit gibt man dem Benutzer die Möglichkeit, direkt von der Loginseite auf die Registrierungs– bzw. auf die Kennworterinnerungswebseite zu gelangen.

Schritt 5: Authentifizierungstyp verändern

Damit wir die Anmeldung über dieses Login-Control machen können, müssen wir zunächst den Authentifizierungstyp für das Internet aktivieren.

Dieses Aktivieren geht mit dem Websiteverwaltungs-Tool. Dieses Tool startet man über das Menü „WebSite“ und anschließend „ASP.NET-Konfiguration“.

'ASP.NET-Konfiguration' starten

Anschließend ruft der Internet Explorer das Web- Dies geschieht ebenfalls über das Websiteverwaltungs-Tool. Über den Punkt „Sicherheit“ kommt man wieder zur Sicherheitsverwaltung. Dort gibt es neben dem Bereich „Benutzer“ auch den Bereich „Rollen“. Dort muss man zuerst „Rollen aktivieren“. Anschließend kann man „Rollen erstellen und verwalten“. Schritt 1: Startbedingungen siteverwaltungs-Tool aufrufen.

Über den Punkt „Sicherheit“ gelangen wir zur Konfiguration des Authentifizierungstyps. Weiter unten auf dieser Webseite findet man den Punkt „Authentifizierungstyp auswählen“. Diesen Link bitte anklicken und auf der nächsten Seite die eine Frage „Wie werden die Benutzer auf Ihre Seite zugreifen?“ mit „Aus dem Internet“ beantworten. Anschließend diese Änderung mit „Fertig“ speichern.

Über den Punkt „Sicherheit“ gelangen wir zur
                          Konfiguration des Authentifizierungstyps

Authentifizierungstyp verändern

Schritt 6: Gruppe anlegen

Rollen aktivieren

Im nächsten Schritt möchten wir, dass der Ordner „Geheim“ nur für die Gruppe „Mitglieder“ freigegeben wird. Dafür müssen wir allerdings erst die Gruppe „Mitglieder“ anlegen.

Dies geschieht ebenfalls über das Websiteverwaltungs-Tool. Über den Punkt „Sicherheit“ kommt man wieder zur Sicherheitsverwaltung. Dort gibt es neben dem Bereich „Benutzer“ auch den Bereich „Rollen“. Dort muss man zuerst „Rollen aktivieren“. Anschließend kann man „Rollen erstellen und verwalten“.

In die Textbox neben Neuer Rollenname tragen wir nun unsere neue Rolle „Mitglieder“ ein und klicken anschließend „Rolle hinzufügen“. Jetzt haben wir die Rolle angelegt, für die wir im nächsten Schritt Berechtigungen vergeben wollen.

Rollen erstellen

Schritt 7: Berechtigung für Geheim-Ordner vergeben

Berechtigung für Geheim-Ordner vergeben

Von der Sicherheitsseite (einfach „Sicherheit“ oben im Websiteverwaltungs-Tool anklicken) gelangt man über „Zugriffsregeln verwalten“ zu dem Bereich, in dem man Ordnern Berechtigungen vergeben kann, um den Inhalt vor unerwünschten Blicken zu schützen. Auf der folgenden Seite kann man die Berechtigungen für den Ordner „Geheim“ setzen. Erster Schritt: Neue Zugriffsregel hinzufügen, Rolle „Mitglieder“ -> Zulassen -> Ok.

Zugriffsregeln verwalten

Zweiter Schritt: Neue Zugriffsregel hinzufügen, Alle Benutzer -> Verweigern -> Ok.

 „web.config“-Datei beinhaltet die Berechtigungen für diesen Ordner

Nachdem man die Änderungen mit „Fertig“ bestätigt hat, kann der Internet Explorer mit dem Websiteverwaltungs- Tool beendet werden.

Wenn man nun im Projektmappen- Explorer auf den „Aktualisieren“-Button drückt und den Ordner „Geheim“ aufklappt, sieht man eine neue Datei, die wie von Zauberhand hinzugekommen ist. Diese „web.config“-Datei beinhaltet die Berechtigungen für diesen Ordner.

Schritt 8: Benutzer registrieren

Webseite mit der Taste F5 oder mit dem grünen Play- Button starten

Bitte die WebForm Default.aspx im Ordner „Geheim“ markieren und anschließend die Webseite mit der Taste F5 oder mit dem grünen Play- Button starten.

Da die Webseite geschützt ist, wird man als Erstes auf die Login-Seite weitergeleitet. Da wir noch keinen Benutzer angelegt haben, müssen wir zunächst einen Benutzer neu registrieren. Standardmäßig erwartet das Login-Control ein starkes Kennwort mit drei verschiedenen Zeichenarten, z.B. geheim#06.

Schritt 9: Benutzer zu Gruppe hinzufügen

Nachdem der neue Benutzer nun angelegt wurde, muss er auch der Gruppe „Mitglieder“ hinzugefügt werden. Dies geschieht nun wieder mit dem Websiteverwaltungs-Tool.

Das Websiteverwaltungs-Tool über das Menü Website -> ASP.NET-Konfiguration starten und anschließend in den Bereich Sicherheit wechseln. Dort kann man über den Punkt „Benutzer verwalten“ dem Benutzer eine (oder mehrere) Gruppen zuweisen. Dazu wählt man einen Benutzer aus und wählt „Benutzer bearbeiten“, um die Konfiguration des Benutzers vorzunehmen.

Bei „Rollen für diesen Benutzer auswählen“ machen wir ein Häkchen neben „Mitglieder“ und speichern diese Änderung.

Websiteverwaltungs-Tool

Schritt 10: Anmelden als registrierter Benutzer

Nachdem man nun einen Benutzer angelegt und der Gruppe Mitglieder zugewiesen hat, kann man sich an der Webseite anmelden. Dazu markieren wir wieder die Webseite Default.aspx im Geheim-Ordner und starten die Anwendung mit der F5-Taste oder mit dem grünen Play-Pfeil.

Nun hat man Zugriff auf die geschützte WebForm im Geheim-Ordner.

Anmelden als registrierter Benutzer

Schritt 11: Überall An– und Abmelden ermöglichen

Möchte man seinen Besuchern nun auf jeder Webseite das An– und Abmelden ermöglichen, kann man eine kleine Erweiterung an der Masterseite vornehmen. Auf der Masterseite kann man das LoginStatus-Control aus der Toolbox einfügen. Dieses Control zeigt einem nicht angemeldeten Benutzer immer „Anmelden“ als Link auf die Login-Seite und einem angemeldeten Benutzer immer „Abmelden“ an.

LoginStatus-Control

Schritt 12: Angemeldete Benutzer anzeigen

Mit Hilfe des LoginName-Control aus der Toolbox hat man die Möglichkeit, anzeigen zu lassen, welcher Benutzer überhaupt gerade angemeldet ist.

LoginName-Control