Erstellen einer kennwortgeschützten Webseite mit Microsoft Office FrontPage 2003, Active Server Pages (ASP) und einer Microsoft Access-Datenbank

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 825498 - Produkte anzeigen, auf die sich dieser Artikel bezieht
Dieser Artikel ist eine Übersetzung des folgenden englischsprachigen Artikels der Microsoft Knowledge Base:
825498 How to create a password-protected Web page by using FrontPage 2003, Active Server Pages, and an Access database
In Artikel 321439 wird dieses Thema für Microsoft FrontPage 2002 behandelt.
In Artikel 321503 wird dieses Thema für Microsoft FrontPage 2000 behandelt.
Bitte beachten Sie: Bei diesem Artikel handelt es sich um eine Übersetzung aus dem Englischen. Es ist möglich, dass nachträgliche Änderungen bzw. Ergänzungen im englischen Originalartikel in dieser Übersetzung nicht berücksichtigt sind. Die in diesem Artikel enthaltenen Informationen basieren auf der/den englischsprachigen Produktversion(en). Die Richtigkeit dieser Informationen in Zusammenhang mit anderssprachigen Produktversionen wurde im Rahmen dieser Übersetzung nicht getestet. Microsoft stellt diese Informationen ohne Gewähr für Richtigkeit bzw. Funktionalität zur Verfügung und übernimmt auch keine Gewährleistung bezüglich der Vollständigkeit oder Richtigkeit der Übersetzung.
Alles erweitern | Alles schließen

Auf dieser Seite

Zusammenfassung

Dieser Artikel bietet eine schrittweise Anleitung zum Erstellen einer einfachen Lösung für eine kennwortgeschützte Webseite mit Microsoft FrontPage 2003, Active Server Pages (ASP) und einer Microsoft Access-Datenbank.

Wichtig:
  • Der Beispielcode in diesem Artikel dient nicht als Ersatz für die in FrontPage 2003 integrierte Sicherheitsfunktionalität. Die Beispiele dienen nur als einfacher Sicherheitsmechanismus für Benutzer, die Ihre Website besuchen. Die FrontPage 2003-Sicherheit wird als solche nicht auf die Benutzernamen und -kennwörter angewandt, die zur Microsoft Access-Datenbank hinzugefügt werden.
  • Die eingegebenen Benutzernamen und -kennwörter werden über das Internet im Nur-Text-Format übertragen. Um eine höhere Sicherheit zu gewährleisten, empfiehlt Microsoft die Verwendung eines Webservers, der SSL-Verschlüsselung (Secure Sockets Layer) verwendet. Weitere Informationen erhalten Sie von Ihrem Website-Administrator oder Internetdienstanbieter.

Verwendung der ASP-Features in FrontPage 2003

Um die ASP-Features in FrontPage 2003 nutzen zu können, müssen Sie Zugang zu einem Webserver oder datenträgerbasierten Web haben, der/das ASP unterstützt.

Erstellen einer neuen Website in FrontPage 2003

Hinweis: Bei diesem Beispiel wird davon ausgegangen, dass Sie Ihre Website "logon" nennen und sie als Unterweb vom Stammverzeichnis Ihrer Website anlegen. Wenn Sie einen anderen Namen als "logon" verwenden oder die Website an einem anderen Speicherort erstellen, müssen Sie alle in diesem Artikel beschriebenen Schritte entsprechend ändern.

Gehen Sie folgendermaßen vor, um in FrontPage 2003 eine neue Website zu erstellen:
  1. Starten Sie FrontPage 2003.
  2. Klicken Sie im Menü Datei auf Neu.
  3. Klicken Sie im Aufgabenbereich auf Mehr Websitevorlagen und anschließend auf Leere Website.
  4. Geben Sie unter Optionen im folgenden Format an, wo die neue Website gespeichert werden soll:
    http://servername/logon
    Dabei steht servername für den Namen Ihres ASP-fähigen Webservers.
  5. Klicken Sie auf OK.
Die neue, leere Website namens "logon" wird in FrontPage 2003 geöffnet.

Erstellen einer Datenbank

Erstellen Sie mit einem Datenbankprogramm wie Microsoft Office Access 2003 eine Datenbank, um Benutzernamen und Kennwörter zu speichern.

Hinweis: Wenn Sie ein anderes Programm als Access 2003 zum Erstellen der Datenbank verwenden, ändern Sie diese Schritte entsprechend.

Gehen Sie folgendermaßen vor, um eine Datenbank zu erstellen:
  1. Starten Sie Access 2003.
  2. Klicken Sie im Menü Datei auf Neu.
  3. Klicken Sie im Aufgabenbereich auf Leere Datenbank.
  4. Geben Sie logon.mdb als Dateinamen an, und klicken Sie auf Erstellen.
  5. Klicken Sie im Fenster Objekte auf Tabellen und anschließend auf Neu.
  6. Klicken Sie auf Entwurfsansicht und anschließend auf OK.
  7. In der ersten Zeile der Spalte Feldname geben Sie UID ein.
  8. Klicken Sie in der entsprechenden Spalte Datentyp auf Text und anschließend in der Symbolleiste auf die Schaltfläche Primärschlüssel (erscheint als Schlüsselsymbol).
  9. In der zweiten Zeile der Spalte Feldname geben Sie PWD ein. Klicken Sie in der zweiten Zeile in der Spalte Datentyp auf Text.
  10. Klicken Sie im Menü Datei auf Speichern.
  11. Im Feld Tabellenname geben Sie tblUsers ein. Klicken Sie anschließend auf OK.
  12. Klicken Sie im Menü Ansicht auf Datenblattansicht.
  13. In der Spalte UID geben Sie testuser ein.

    In der Spalte PWD geben Sie password ein.
  14. Klicken Sie im Menü Datei auf Schliessen, und beenden Sie dann Access 2003.
Hinweis: Aus Sicherheitsgründen sind Kennwörter auf eine Mischung aus Groß- und Kleinbuchstaben und Zahlen eingeschränkt.

Importieren der Datenbank

Importieren Sie den Benutzernamen und die Kennwortdatenbank, die Sie erstellt haben, in FrontPage 2003. Gehen Sie hierzu folgendermaßen vor:
  1. Klicken Sie in FrontPage 2003 bei geöffneter Anmeldewebsite im Menü Datei auf Importieren.
  2. Klicken Sie auf Datei hinzufügen und dann auf die Datei logon.mdb, die Sie erstellt haben.

    Klicken Sie auf Öffnen.
  3. Klicken Sie auf Ändern, geben Sie _private/logon.mdb im Feld Dateipfad innerhalb Ihrer Website ein, und klicken Sie auf OK.

    Hinweis: Im Pfad der Datei befindet sich vor "private" ein Unterstrich (_).
  4. Klicken Sie auf OK, um die Datenbankdatei zu importieren.
  5. Klicken Sie auf Nein, wenn Sie gefragt werden, ob eine Verbindung zur Datenbank für die importierte Datei hergestellt werden soll.

Erstellen der ASP-Seiten

Sie müssen mehrere Dateien erstellen, um mit diesem Beispiel arbeiten zu können. Erstellen Sie zunächst eine Homepage für Ihre Website, eine "unsichere" Seite und eine kennwortgeschützte Seite für Testzwecke, und dann die Anmeldewebseite und die Anmelde-Includedatei.

Erstellen der Homepage

Diese Seite dient als Standardseite für Ihre Site und enthält Links zur unsicheren Seite und zur kennwortgeschützten Webseite, die Sie später erstellen. Gehen Sie folgendermaßen vor, um eine Homepage zu erstellen:
  1. Klicken Sie in FrontPage 2003 im Menü Datei auf Neu, und klicken Sie dann auf Leere Seite.
  2. Klicken Sie im Fußzeilenbereich des Dokumentfensters auf Code, um die Codeansicht anzuzeigen.
  3. Markieren und entfernen Sie den gesamten HTML-Code in der Webseite.
  4. Geben Sie folgenden HTML-Code auf der Webseite ein, oder fügen Sie den Code ein:
    <% @language="vbscript" %>
    <html>
    <head><title>Home Page</title></head>
    <body>
    <h3>Home Page</h3>
    <p>You are logged on as: 
    <%
      If Len(Session("UID")) = 0 Then
        Response.Write "<b>You are not logged on.</b>"
      Else
        Response.Write "<b>" & Session("UID") & "</b>"
      End If
    %>
    </p>
    <ul>
     
    <li><a href="passwordprotect.asp">Password-Protected Page</a></li>
    <li><a href="nonsecure.asp">Nonsecure Page</a></li>
    
    </ul>
    </body>
    </html>
    
  5. Klicken Sie mit der rechten Maustaste auf die Registerkarte new_page_1.htm. Klicken Sie anschließend auf Speichern.

    Speichern Sie die Seite im Stammverzeichnis Ihrer Anmelde-Website als default.asp.
  6. Klicken Sie im Menü Datei auf Schließen, um die Webseite "default.asp" zu schließen.

Erstellen der unsicheren Seite

Erstellen Sie eine typische ASP-Seite, die von jedem beliebigen Benutzer angezeigt werden kann. Gehen Sie folgendermaßen vor, um eine unsichere Seite zu erstellen:
  1. Klicken Sie in FrontPage 2003 im Menü Datei auf Neu, und klicken Sie dann auf Leere Seite.
  2. Klicken Sie im Fußzeilenbereich des Dokumentfensters auf Code, um die Codeansicht anzuzeigen.
  3. Markieren und entfernen Sie den gesamten HTML-Code in der Webseite.
  4. Geben Sie folgenden HTML-Code auf der Webseite ein, oder fügen Sie den Code ein:
    <% @language="vbscript" %>
    <html>
    <head><title>Nonsecure Page</title></head>
    <body>
    <h3>Nonsecure Page</h3>
    <p>You are logged on as: 
    <%
      If Len(Session("UID")) = 0 Then
        Response.Write "<b>You are not logged on.</b>"
      Else
        Response.Write "<b>" & Session("UID") & "</b>"
      End If
    %>
    </p>
    <p><a href="default.asp">Back to default</a></p>
    </body>
    </html>
    
  5. Klicken Sie mit der rechten Maustaste auf die Registerkarte new_page_1.htm. Klicken Sie anschließend auf Speichern.

    Speichern Sie die Seite im Stammverzeichnis Ihrer Anmelde-Website als nonsecure.asp.
  6. Klicken Sie im Menü Datei auf Schließen, um die Webseite "nonsecure.asp" zu schließen.

Erstellen der kennwortgeschützten Seite

Diese Seite unterscheidet sich von der unsicheren Seite, die Sie zuvor erstellt haben, nur darin, dass Sie folgende Codezeile am Anfang der Seite einfügen müssen:
<!--#include virtual="/logon/_private/logon.inc"-->
Wenn Sie diese Codezeile zu einer ASP-Webseite hinzufügen, wird diese Seite durch die von Ihnen zu erstellende Datei "logon.inc" mit einem Kennwort geschützt. Gehen Sie folgendermaßen vor, um eine kennwortgeschützte Webseite zu erstellen:
  1. Klicken Sie in FrontPage 2003 im Menü Datei auf Neu, und klicken Sie dann auf Leere Seite.
  2. Klicken Sie im Fußzeilenbereich des Dokumentfensters auf Code, um die Codeansicht anzuzeigen.
  3. Markieren und entfernen Sie den gesamten HTML-Code in der Webseite.
  4. Geben Sie folgenden HTML-Code auf der Webseite ein, oder fügen Sie den Code ein:
    <% @language="vbscript" %>
    <!--#include virtual="/logon/_private/logon.inc"-->
    <html>
    <head><title>Password-Protected Page</title></head>
    <body>
    <h3>Password-Protected Page</h3>
    <p>You are logged on as: 
    <%
      If Len(Session("UID")) = 0 Then
        Response.Write "<b>You are not logged on.</b>"
      Else
        Response.Write "<b>" & Session("UID") & "</b>"
      End If
    %>
    </p>
    <p><a href="default.asp">Back to default</a>
    </body>
    </html>
    
  5. Klicken Sie mit der rechten Maustaste auf die Registerkarte new_page_1.htm. Klicken Sie anschließend auf Speichern.

    Speichern Sie die Seite im Stammverzeichnis Ihrer Anmelde-Website als passwordprotect.asp.
  6. Klicken Sie im Menü Datei auf Schließen, um die Webseite "passwordprotect.asp" zu schließen.

Erstellen der Anmeldeseite

Erstellen Sie eine Anmeldeseite, die wie ein typisches Windows-Anmeldedialogfenster aussieht. Benutzer, die versuchen, auf die kennwortgeschützte Website zuzugreifen, werden auf diese Seite weitergeleitet und müssen ihren Benutzernamen und ihr Kennwort eingeben. Gehen Sie folgendermaßen vor, um eine Anmeldeseite zu erstellen:
  1. Klicken Sie in FrontPage 2003 im Menü Datei auf Neu, und klicken Sie dann auf Leere Seite.
  2. Klicken Sie im Fußzeilenbereich des Dokumentfensters auf Code, um die Codeansicht anzuzeigen.
  3. Markieren und entfernen Sie den gesamten HTML-Code in der Webseite.
  4. Geben Sie folgenden HTML-Code auf der Webseite ein, oder fügen Sie den Code ein:
    <% @language="vbscript" %>
    <!--#include virtual="/logon/_private/logon.inc"-->
    <%
      ' Was this page posted to?
      If UCase(Request.ServerVariables("HTTP_METHOD")) = "POST" Then
        ' If so, check the username/password that was entered.
        If ComparePassword(Request("UID"),Request("PWD")) Then
          ' If comparison was good, store the user name...
          Session("UID") = Request("UID")
          ' ...and redirect back to the original page.
          Response.Redirect Session("REFERRER")
        End If
      End If
    %>
    <html>
    <head><title>Logon Page</title>
    <style>
    body  { font-family: arial, helvetica }
    table { background-color: #cccccc; font-size: 9pt; padding: 3px }
    td    { color: #000000; background-color: #cccccc; border-width: 0px }
    th    { color: #ffffff; background-color: #0000cc; border-width: 0px }
    </style>
    </head>
    <body bgcolor="#000000" text="#ffffff">
    <h3 align="center">&#xa0;</h3>
    <div align="center"><center>
    <form action="<%=LOGON_PAGE%>" method="POST">
    <table border="2" cellpadding="2" cellspacing="2">
      <tr>
        <th colspan="4" align="left">Enter User Name and Password</th>
      </tr>
      <tr>
        <td>&#xa0;</td>
        <td colspan="2" align="left">Please type your user name and password.</td>
        <td>&#xa0;</td>
      </tr>
      <tr>
        <td>&#xa0;</td>
        <td align="left">Site</td>
        <td align="left"><%=Request.ServerVariables("SERVER_NAME")%> &#xa0;</td>
        <td>&#xa0;</td>
      </tr>
      <tr>
        <td>&#xa0;</td>
        <td align="left">User Name</td>
        <td align="left"><input name="UID" type="text" size="20"></td>
        <td>&#xa0;</td>
      </tr>
      <tr>
        <td>&#xa0;</td>
        <td align="left">Password</td>
        <td align="left"><input name="PWD" type="password" size="20"></td>
        <td>&#xa0;</td>
      </tr>
      <tr>
        <td>&#xa0;</td>
        <td colspan="2" align="center"><input type="submit" value="LOGON"></td>
        <td>&#xa0;</td>
      </tr>
    </table>
    </form>
    </center></div>
    </body>
    </html>
    
  5. Klicken Sie mit der rechten Maustaste auf die Registerkarte new_page_1.htm. Klicken Sie anschließend auf Speichern.

    Speichern Sie die Seite im Stammverzeichnis Ihrer Anmelde-Website als logon.asp.
  6. Klicken Sie im Menü Datei auf Schließen, um die Webseite "logon.asp" zu schließen.

Erstellen der Anmelde-Includedatei

Diese Includedatei bietet die Benutzernamen- und Kennwortfunktionalität und wird sowohl von der kennwortgeschützten Webseite als auch von der Anmeldeseite verwendet. Gehen Sie folgendermaßen vor, um die Anmelde-Includedatei zu erstellen:
  1. Klicken Sie in FrontPage 2003 im Menü Datei auf Neu, und klicken Sie dann auf Leere Seite.
  2. Klicken Sie im Fußzeilenbereich des Dokumentfensters auf Code, um die Codeansicht anzuzeigen.
  3. Markieren und entfernen Sie den gesamten HTML-Code in der Webseite.
  4. Geben Sie folgenden HTML-Code auf der Webseite ein, oder fügen Sie den Code ein:
    <%
      ' Do not cache this page.
      Response.CacheControl = "no-cache"
    
      ' Define the name of the users table.
      Const USERS_TABLE  = "tblUsers"
      ' Define the path to the logon page.
      Const LOGON_PAGE   = "/logon/logon.asp"
      ' Define the path to the logon database.
      Const MDB_URL      = "/logon/_private/logon.mdb"
    
      ' Check to see whether you have a current user name.
      If Len(Session("UID")) = 0 Then
        ' Are you currently on the logon page?
        If LCase(LOGON_PAGE) <> LCase(Request.ServerVariables("URL")) Then
          ' If not, set a session variable for the page that made the request...
          Session("REFERRER") = Request.ServerVariables("URL")
          ' ...and redirect to the logon page.
          Response.Redirect LOGON_PAGE
        End If
      End If
    
      ' This function checks for a username/password combination.
      Function ComparePassword(UID,PWD)
        ' Define your variables.
        Dim strSQL, objCN, objRS
        ' Set up your SQL string.
        strSQL = "SELECT * FROM " & USERS_TABLE & _
          " WHERE (UID='" & ParseText(UID) & _
          "' AND PWD='" & ParseText(PWD) & "');"
        ' Create a database connection object.
        Set objCN = Server.CreateObject("ADODB.Connection")
        ' Open the database connection object.
        objCN.Open "driver={Microsoft Access Driver (*.mdb)}; dbq=" & _
          Server.MapPath(MDB_URL) & "; uid=admin; pwd="
        ' Run the database query.
        Set objRS = objCN.Execute(strSQL)
        ' Set the status to true/false for the database lookup.
        ComparePassword = Not(objRS.EOF)
        ' Close your database objects.
        Set objRS = Nothing
        Set objCN = Nothing
      End Function
    
      ' This function restricts text to alpha-numeric data only.
      Function ParseText(TXT)
        Dim intPos, strText, intText
        For intPos = 1 TO Len(TXT)
          intText = Asc(Mid(TXT,intPos,1))
          If (intText > 47 And intText < 58) Or _
             (intText > 64 And intText < 91) Or _
             (intText > 96 And intText < 123) Then
              strText = strText & Mid(TXT,intPos,1)
          End if
        Next
        ParseText = strText
      End Function
    %>
  5. Klicken Sie mit der rechten Maustaste auf die Registerkarte new_page_1.htm. Klicken Sie anschließend auf Speichern.

    Speichern Sie die Seite im Verzeichnis _private Ihrer Website als logon.inc.
  6. Klicken Sie im Menü Datei auf Schließen, um die Datei "logon.inc" zu schließen.

Testen der Anmeldewebsite

Gehen Sie hierzu folgendermaßen vor:
  1. Klicken Sie in FrontPage 2003 im Fenster Ordnerliste mit der rechten Maustaste auf Default.asp. Klicken Sie anschließend auf Browservorschau.

    Der Webbrowser lädt nun die Beispiel-Homepage und zeigt an, dass Sie nicht angemeldet sind.
  2. Klicken Sie auf den Link Nonsecure page.

    Die Seite wird geladen und zeigt an, dass Sie nicht angemeldet sind. Klicken Sie auf den Link Back to default, um auf die Standardseite zurückzukehren.
  3. Klicken Sie auf den Link Password-Protected page.

    Jetzt wird die Seite "logon.asp" anstelle der kennwortgeschützten Seite geladen.
  4. Im Feld User Name geben Sie testuser ein, und im Feld Password geben Sie password ein. Klicken Sie anschließend auf LOGON.

    Die kennwortgeschützte Seite wird angezeigt und zeigt an, dass Sie als testuser angemeldet sind. Klicken Sie auf den Link Back to default, um auf die Standardseite zurückzukehren. Die Beispiel-Homepage wird geladen und zeigt an, dass Sie als testuser angemeldet sind.
  5. Klicken Sie auf den Link Nonsecure page.

    Die Seite wird geladen und zeigt an, dass Sie als testuser angemeldet sind.

Anpassen der Anmeldewebsite

Sie können die Beispiel-Website "logon" auf folgende Weise anpassen:
  • Benutzernamen und -kennwörter hinzufügen: Sie können die Datenbank öffnen. Doppelklicken Sie dazu in FrontPage 2003 auf die Datenbank, und fügen Sie Benutzer zur Tabelle tblUsers hinzu.
  • Andere kennwortgeschützte Webseiten: Um eine andere Webseite in Ihrer Website durch ein Kennwort zu schützen, müssen Sie die Datei mit einer ASP-Dateinamenerweiterung speichern, beispielsweise unter dem Namen mypage.asp, und anschließend die folgenden beiden Zeilen am Anfang der Datei einfügen:
    <% @language="vbscript" %>
    <!--#include virtual="/logon/_private/logon.inc"-->
    
    Die erste Zeile legt fest, dass Sie Microsoft Visual Basic Scripting Edition (VBScript) als Skriptsprache verwenden, und die zweite Zeile enthält die Benutzernamen- und Kennwortfunktionalität aus der Anmelde-Includedatei, die Sie zuvor erstellt haben.

Weitere Informationen

In der Datenbank gespeicherte Benutzernamen und Kennwörter werden nicht verschlüsselt. Diese Daten lassen sich auch durch die Verwendung einer Kennworteingabemaske nicht verschlüsseln. Aus diesem und ähnlichen Gründen sollten Access-Datenbanken nicht für Produktions-Websites verwendet werden. Weitere Informationen zum Absichern der HTTP-Verbindung zwischen Client und Server erhalten Sie in den folgenden Artikeln der Microsoft Knowledge Base:
299525 Wie Einrichten von SSL, wenn IIS 5.0 und Certificate Server 2.0 verwendet
299875 Wie Implementieren von SSL in II

Informationsquellen

Weitere Informationen zur Vorgehensweise zur Integration von Active Server Pages (ASP) mit Datenbanken finden Sie in den folgenden Artikeln der Microsoft Knowledge Base:
299987 Verwenden von Datenbank- und ASP-Sitzungen zum Implementieren von ASP-Sicherheit
300382 SO WIRD'S GEMACHT: Erstellen einer Datenbankverbindung von einer ASP-Seite: Beispiele für Verbindungszeichenfolgen
318287 FP2002: Für die Verwendung von Active Server Pages (ASP) in FrontPage 2002 benötigte Elemente

Eigenschaften

Artikel-ID: 825498 - Geändert am: Dienstag, 5. Juni 2007 - Version: 5.1
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Office SharePoint Designer 2007
  • Microsoft Office FrontPage 2003
Keywords: 
kbdatabase kbasp kbhowtomaster KB825498
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com