Jak vytvořit webové stránky, který je chráněn heslem pomocí Expression Web, ASP a databáze aplikace Access

Souhrn

Tento podrobný článek popisuje, jak vytvořit jednoduchou webovou stránku řešení, které poskytuje ochranu heslem pomocí databáze aplikace Microsoft Access, Microsoft Expression Web a Active Server Pages (ASP).
  • Ukázkový kód v tomto článku není určen k nahrazení funkce zabezpečení integrované Expression Web. Vzorky jsou určeny poskytnout jednoduchý mechanismus zabezpečení pouze pro uživatele, kteří procházejí váš web. Expression Web zabezpečení proto Neintegruje pomocí uživatelského jména a hesla, které jsou přidány do databáze aplikace Access.
  • Uživatelská jména a hesla, které jsou zadány v jsou přenášeny přes Internet ve formátu prostého textu. Chcete-li zvýšit zabezpečení, doporučujeme použít webový server, který slouží k šifrování protokol SSL (Secure Sockets Layer) (SSL). Další informace získáte od správce webového serveru nebo vašeho poskytovatel metadat Internetu (ISP).

Úvod

Tento článek popisuje, jak vytvořit webovou stránku, která je chráněn heslem pomocí Expression Web, ASP a databáze aplikace Access.

Další informace

Použití funkcí stránek ASP v Expression Web

Před použitím funkce prostředí ASP v Expression Web, musíte mít přístup k webovému serveru nebo webu na disku, který podporuje stránky ASP.

Vytvoření nového webu v Expression Web

Poznámka: Příkladu se předpokládá, že název přihlášení k webu a že přihlašovací server je vytvořen jako dílčí Web v kořenovém adresáři webového serveru. -Li použít jiný název než logon nebo vytvořit web v jiném umístění, je třeba odpovídajícím způsobem upravit kroky v tomto článku.

K vytvoření nového webu v Expression Web, postupujte takto:
  1. Spusťte Expression Web.
  2. V nabídce soubor klepněte na příkaz Novýa potom klepněte na webu.
  3. V dialogovém okně Nový klepněte na tlačítko prázdný web na kartě webového serveru .
  4. Do pole Zadejte umístění nového webu zadejte umístění, kam chcete uložit nový web v následujícím formátu:

    http://servername/logon
  5. Klepněte na tlačítko OK
V Expression Web se otevře nový prázdný webový server s názvem logon.

Vytvoření databáze

Můžete vytvořit databázi pomocí databázového programu, například Microsoft Office Access 2003 uložit uživatelská jména a hesla.

Poznámka: Pokud použijete pro vytvoření databáze databáze jiný program než Access 2003, následující postup příslušně upravte.

Chcete-li vytvořit databázi, postupujte takto:
  1. Spusťte aplikaci Access 2003.
  2. V nabídce soubor klepněte na tlačítko Nový.
  3. V podokno úloh klepněte na tlačítko Prázdná databáze.
  4. Zadejte logon.mdb název souboru a klepněte na tlačítko vytvořit.
  5. V podokně objekty klepněte na tlačítko tabulkya potom klepněte na tlačítko Nový.
  6. Klepněte na příkaz Návrhové zobrazenía klepněte na tlačítko OK.
  7. V prvním řádku sloupce Název pole zadejte UID.
  8. V odpovídajícím sloupci Datový typ klepněte na Texta potom klepněte na tlačítko Primární klíč na panelu nástrojů.

    Poznámka: Primární klíč tlačítko se zobrazí jako symbol klíče.
  9. V druhém řádku sloupce Název pole zadejte hesloa klepněte na Text v druhém řádku sloupce Datového typu .
  10. V nabídce soubor klepněte na tlačítko Uložit.
  11. V poli Název tabulky zadejte tblUsersa klepněte na tlačítko OK.
  12. V nabídce Zobrazit klepněte na příkaz Zobrazení datového listu.
  13. Ve sloupci UID zadejte testuser.
    Ve sloupci heslo zadejte heslo.
  14. V nabídce soubor klepněte na tlačítko Zavříta pak ukončete aplikaci Access 2003.
Poznámka: Z důvodů zabezpečení hesla jsou omezeny na směsi velká písmena, malá písmena a čísla.

Import databáze

Importujte databázi, kterou jste vytvořili pro úložiště uživatelských jmen a hesel do Expression Web. Chcete-li to provést, postupujte takto:
  1. V Expression Web otevřít vaši webovou stránku přihlášení, klepněte na příkaz Import v nabídce soubor a klepněte na soubor.
  2. Klepněte na tlačítko Přidat soubor, vyhledejte a klepněte logon.mdb soubor, který jste vytvořili a potom klepněte na tlačítko Otevřít.
  3. Klepněte na příkaz změnit, zadejte _private/logon.mdb v textovém poli umístění souboru v sadě webových souborů a klepněte na tlačítko OK.

    Poznámka: Je podtržítko (_) před "Soukromé" v cestě k souboru.
  4. Klepněte na tlačítko OK proveďte import souboru databáze.
  5. Pokud se zobrazí výzva k vytvoření připojení k databázi pro tento importovaný soubor, klepněte na tlačítko Ne.

Vytvoření stránek ASP

Je nutné vytvořit několik souborů pro práci s touto ukázkou. Nejprve vytvořte domovskou stránku webu, "nezabezpečená" stránka a stránka, která je chráněna pro testování přihlašovací webovou stránku a přihlášení zahrnout soubor.

Společnost Microsoft poskytuje ukázky programování pouze pro ilustraci bez žádné záruky výslovně uvedené nebo odvozené. To zahrnuje, ale není omezen pouze na předpokládané záruky obchodovatelnosti nebo vhodnosti pro určitý účel. Tento článek předpokládá, že jste obeznámeni s programovacím jazykem, který je předmětem ukázky a s nástroji, které slouží k vytvoření a ladění skriptu. Pracovníci podpory společnosti Microsoft mohou vysvětlit funkce určitého postupu. Nemohou však následující příklady rozšířit o další funkce nebo konstrukce podle konkrétních požadavků.

Vytvoření domovské stránky

Tato stránka slouží jako výchozí stránka pro váš web. Obsahuje odkazy na nezabezpečené stránky a na chráněné webové stránky, které vytvoříte. Chcete-li vytvořit domovskou stránku, postupujte takto:
  1. V Expression Web v nabídce soubor klepněte na příkaz Nový a klepněte na příkaz stránka.
  2. V dialogovém okně Nový klepněte na kartu HTML a potom klepněte na tlačítko OK.
  3. V oblasti zápatí okna dokumentu klepněte na tlačítko kód zobrazte kód.
  4. Vyberte a odeberte veškerý kód HTML na webové stránce.
  5. Zadejte nebo vložte následující kód HTML na webové stránce.
    <% @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>
  6. Stránku uložte pod názvem default.asp v kořenové složce webu logon.
  7. V nabídce soubor klepněte na tlačítko Zavřít zavřete webovou stránku default.asp.

Vytvoření nezabezpečené stránky

Vytvořte typickou stránku ASP, který mohou zobrazit všichni uživatelé. Vytvoření nezabezpečené stránky, postupujte takto:
  1. V Expression Web v nabídce soubor klepněte na příkaz Nový a klepněte na příkaz stránka.
  2. V dialogovém okně Nový klepněte na kartu HTML a potom klepněte na tlačítko OK.
  3. V oblasti zápatí okna dokumentu klepněte na tlačítko kód zobrazte kód.
  4. Vyberte a odeberte veškerý kód HTML na webové stránce.
  5. Zadejte nebo vložte následující kód HTML na webové stránce.
    <% @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>
  6. Stránku uložte pod názvem nonsecure.asp v kořenové složce webu logon.
  7. V nabídce soubor klepněte na tlačítko Zavřít na webovou stránku nonsecure.asp zavřete.

Vytvoření chráněné stránky

Stránky v tomto kroku je stejná jako nezabezpečená webová stránka, kterou jste vytvořili dříve, s tím rozdílem, že je nutné přidat následující kód v horní části zobrazení kódu:
<!--#include virtual="/logon/_private/logon.inc"-->
Pokud přidáte tento řádek kódu na stránku ASP, se stane stránky chráněné heslem pomocí souboru logon.inc, který vytvoříte. Chcete-li vytvořit webovou stránku, která je chráněn heslem, postupujte takto:
  1. V Expression Web v nabídce soubor klepněte na příkaz Nový a klepněte na příkaz stránka.
  2. V dialogovém okně Nový klepněte na kartu HTML a potom klepněte na tlačítko OK.
  3. V oblasti zápatí okna dokumentu klepněte na tlačítko kód zobrazte kód.
  4. Vyberte a odeberte veškerý kód HTML na webové stránce.
  5. Zadejte nebo vložte následující kód HTML na webové stránce.
    <% @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>
  6. Stránku uložte pod názvem passwordprotect.asp v kořenové složce webu logon.
  7. V nabídce soubor klepněte na tlačítko Zavřít zavřete webovou stránku passwordprotect.asp.

Vytvoření přihlašovací stránky

Vytvoření přihlašovacího stránky se podobá typické dialogové okno přihlášení systému Windows. Uživatelé, kteří se pokusí o přístup k chráněné webové stránky jsou odesílány na této stránce k zadání uživatelských jmen a hesel. Chcete-li vytvořit přihlašovací stránku, postupujte takto:
  1. V Expression Web v nabídce soubor klepněte na příkaz Nový a klepněte na příkaz stránka.
  2. V dialogovém okně Nový klepněte na kartu HTML a potom klepněte na tlačítko OK.
  3. V oblasti zápatí okna dokumentu klepněte na tlačítko kód zobrazte kód.
  4. Vyberte a odeberte veškerý kód HTML na webové stránce.
  5. Zadejte nebo vložte následující kód HTML na webové stránce.
    <% @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>
  6. Stránku uložte pod názvem logon.asp v kořenové složce webu logon.
  7. V nabídce soubor klepněte na tlačítko Zavřít zavřete webovou stránku logon.asp.

Vytvoření přihlášení zahrnují soubor

Zahrnout soubor poskytuje funkce uživatelské jméno a heslo. Lze chráněné webové stránky a přihlašovací webovou stránku. Vytvoření přihlášení zahrnují soubor, postupujte takto:
  1. V výraz Návrhář webu v nabídce soubor klepněte na příkaz Nový a klepněte na příkaz stránka.
  2. V dialogovém okně Nový klepněte na kartu HTML a potom klepněte na tlačítko OK.
  3. V oblasti zápatí okna dokumentu klepněte na tlačítko kód zobrazte kód.
  4. Vyberte a odeberte veškerý kód HTML na webové stránce.
  5. Zadejte nebo vložte následující kód HTML na webové stránce.
    <%  ' 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
    %>
  6. Uložte stránku jako logon.inc v _osobní složce webu logon.
  7. V nabídce soubor klepněte na tlačítko Zavřít zavřete webovou stránku logon.inc.

Testování webu logon

Chcete-li to provést, postupujte takto:
  1. V podokně Seznam složek klepněte pravým tlačítkem myši Default.asp v Expression Web a potom klepněte na tlačítko Náhled v prohlížeči.

    Webový prohlížeč načte ukázkovou domovskou stránku a ukazuje, že nejste přihlášeni.
  2. Klepněte na odkaz na nezabezpečené stránky .

    Stránka se načte a ukazuje, že nejste přihlášeni. Klepněte na odkaz zpět na výchozí hodnoty zpět na výchozí stránku.
  3. Klepněte na odkaz na stránky chráněné heslem .

    Načtení stránky logon.asp namísto chráněné stránky.
  4. Do pole Uživatelské jméno zadejte testuser, zadejte heslo do pole heslo a potom klepněte na tlačítko přihlášení.

    Chráněné stránky se objeví a ukazuje, že jste přihlášeni jako testuser. Klepněte na odkaz zpět na výchozí hodnoty zpět na výchozí stránku. Domovská stránka načte a zobrazí zpráva, že jste přihlášeni jako testuser.
  5. Klepněte na odkaz na nezabezpečené stránky .



    Stránka se načte a ukazuje, že jste přihlášeni jako testuser.

Přizpůsobení webu logon

Ukázkový web logon můžete upravit následujícími způsoby:
  • Přidáte uživatelská jména a hesla:
    Můžete otevřít databázi v Expression Web a potom přidejte uživatele do tabulky tblUsers .
  • Vytvořte jiné webové stránky, které jsou chráněné heslem:
    Vytvořit jinou webovou stránku, který je chráněn heslem na serveru WWW, musíte uložit soubor pomocí příponu názvu souboru s příponou ASP, například Mypage.aspa začátek zobrazení kódu přidejte následující dva řádky:
    <% @language="vbscript" %><!--#include virtual="/logon/_private/logon.inc"-->
    První řádek určuje, že používáte aplikaci Microsoft Visual Basic Scripting Edition (VBScript) skriptovacího jazyka. Druhý řádek obsahuje uživatelské jméno a heslo funkce přihlášení zahrnout soubor, který jste vytvořili dříve.

Odkazy

Další informace o tom, jak vytvořit webovou stránku, která je chráněn heslem pomocí aplikace FrontPage 2003 stránek Active Server Pages a databáze aplikace Access klepněte na následující číslo článku databáze Microsoft Knowledge Base:

825498 jak vytvořit webové stránky chráněné heslem pomocí aplikace FrontPage 2003, stránek Active Server Pages a databáze aplikace Access


Další informace o tom, jak zabezpečit komunikaci protokolu HTTP mezi klientem a serverem klepněte na následující čísla článku zobrazení v článcích znalostní báze Microsoft Knowledge Base:

299525 jak nastavit protokol SSL pomocí služby IIS 5.0 a Certificate Server 2.0

299875 jak implementovat protokol SSL ve službě IIS


Další informace o tom, jak integrovat stránky ASP (Active Server) s databází klepněte na následující čísla článku zobrazení v článcích znalostní báze Microsoft Knowledge Base:

Jak užívat databáze a relace ASP k implementaci zabezpečení ASP 299987

300382 jak vytvořit připojení k databázi ze stránky ASP ve službě IIS

318287 co je třeba použít Active Server Pages (ASP) v aplikaci FrontPage 2002

Vlastnosti

ID článku: 928706 - Poslední kontrola: 14. 1. 2017 - Revize: 1

Váš názor