Vytvoření webové stránky chráněné heslem pomocí aplikace FrontPage 2003, stránek ASP a databáze aplikace Access

Překlady článku Překlady článku
ID článku: 825498 - Produkty, které se vztahují k tomuto článku.
Verzi tohoto článku pro aplikaci Microsoft FrontPage 2002 naleznete pod číslem 321439 (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).).
Verzi tohoto článku pro aplikaci Microsoft FrontPage 2000 naleznete pod číslem 321503 (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).).
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Souhrn

Tento článek podrobně popisuje, jak vytvořit jednoduchou, heslem chráněnou webovou stránku pomocí aplikace FrontPage 2003, stránek ASP a databáze aplikace Microsoft Access.

Důležité
  • Ukázkový kód uvedený v článku není navržen jako náhrada funkce zabezpečení integrované v aplikaci FrontPage 2003. Ukázky mají poskytnout jednoduchý mechanismus zabezpečení pouze pro uživatele, kteří procházejí váš web. Zabezpečení aplikace FrontPage 2003 není samo o sobě integrováno s uživatelskými jmény a hesly, která jsou přidána do databáze aplikace Microsoft Access.
  • Zadaná uživatelská jména a hesla jsou prostřednictvím Internetu přenášena jako prostý text. Pro zvýšení bezpečnosti společnost Microsoft doporučuje využití webového serveru, který používá šifrování pomocí protokolu SSL (Secure Sockets Layer). Další informace získáte od správce webu nebo poskytovatele služeb Internetu.

Použití funkcí stránek ASP v aplikaci FrontPage 2003

Před užíváním funkcí stránek ASP v aplikaci FrontPage 2003 je třeba mít přístup k webovému serveru nebo k webu uloženému na disku, který podporuje stránky ASP.

Vytvoření nového webu v aplikaci FrontPage 2003

Poznámka: V příkladu se předpokládá, že nový web má název logon a že jste jej vytvořili jako podřízený web mimo kořenový web. Pokud užíváte jiný název než logon nebo jste web vytvořili v jiném umístění, je třeba postupy uvedené v tomto článku příslušně upravit.

Při vytváření nového webu v aplikaci FrontPage 2003 postupujte takto:
  1. Spusťte aplikaci FrontPage 2003.
  2. V nabídce Soubor klepněte na příkaz Nový.
  3. V podokně úloh klepněte na položku Více šablon webových serverů a potom na položku Prázdný web.
  4. Na kartě Možnosti zadejte požadované umístění nového webu v následujícím formátu:
    http://Název_serveru/logon
    , kde Název_serveru je název webového serveru, který umožňuje použití stránek ASP.
  5. Klepněte na tlačítko OK.
V aplikaci FrontPage 2003 je nyní otevřen nový prázdný web s názvem logon.

Vytvoření databáze

Pomocí databázového programu, jako je například aplikace Microsoft Office Access 2003, vytvořte databázi pro ukládání uživatelských jmen a hesel.

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

Při vytváření databáze postupujte takto:
  1. Spusťte aplikaci Access 2003.
  2. V nabídce Soubor klepněte na příkaz Nový.
  3. V podokně úloh klepněte na položku Prázdná databáze.
  4. Jako název souboru zadejte logon.mdb a potom klepněte na tlačítko Vytvořit.
  5. V podokně Objekty klepněte na položku Tabulky a potom klepněte na možnost Nová.
  6. Klepněte na položku Návrhové zobrazení a potom na tlačítko OK.
  7. V prvním řádku sloupce Název pole zadejte UID.
  8. V odpovídajícím sloupci Typ dat klepněte na položku Text a potom na panelu nástrojů na tlačítko Primární klíč (zobrazuje se jako symbol klíče).
  9. V druhém řádku sloupce Název pole zadejte PWD a potom klepněte na položku Text v druhém řádku sloupce Typ dat.
  10. V nabídce Soubor klepněte na příkaz Uložit.
  11. Do pole Název tabulky zadejte tblUsers a potom 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 PWD zadejte password.
  14. V nabídce Soubor klepněte na příkaz Zavřít a potom ukončete aplikaci Access 2003.
Poznámka: Z bezpečnostních důvodů mohou být hesla tvořena pouze velkými a malými písmeny a číslicemi.

Import databáze

Při importu databáze uživatelských jmen a hesel vytvořených do aplikace FrontPage 2003 použijte následující kroky:
  1. V aplikaci FrontPage 2003 s otevřeným webem s názvem logon klepněte v nabídce Soubor na příkaz Importovat.
  2. Klepněte na možnost Přidat soubor, potom vyhledejte soubor logon.mdb, který jste vytvořili, a klepněte na něj.

    Klepněte na tlačítko Otevřít.
  3. Klepněte na možnost Změnit, do pole Umístění souboru na webu zadejte _private/logon.mdb a potom klepněte na tlačítko OK.

    Poznámka: Před slovem private v cestě k souboru je podtržítko (_).
  4. Klepnutím na tlačítko OK proveďte import souboru databáze.
  5. Zobrazí-li se výzva k vytvoření připojení k databázi pro tento importovaný soubor, klepněte na možnost Ne.

Vytvoření stránek ASP

K práci s touto ukázkou je třeba vytvořit několik souborů. Nejprve pro váš web vytvořte domovskou stránku, nezabezpečenou stránku a stránku chráněnou heslem pro testování a potom přihlašovací webovou stránku a soubor include pro přihlášení.

Vytvoření domovské stránky

Tato stránka slouží jako výchozí stránka pro váš web a zahrnuje odkazy na vytvořenou nezabezpečenou stránku a webovou stránku chráněnou heslem. K vytvoření domovské stránky použijte následující kroky:
  1. V aplikaci FrontPage 2003 klepněte na nabídku Soubor, na příkaz Nový a poté na příkaz Prázdná stránka.
  2. Zobrazte kód klepnutím na možnost Kód v zápatí okna dokumentu.
  3. Vyberte a pak odstraňte celý kód HTML webové stránky.
  4. Do webové stránky potom zadejte nebo zkopírujte následující kód HTML.
    <% @language="vbscript" %>
    <html>
    <head><title>Domovská stránka</title></head>
    <body>
    <h3>Domovská stránka</h3>
    <p>Jste přihlášení jako: 
    <%
      If Len(Session("UID")) = 0 Then
        Response.Write "<b>Nejste přihlášení.</b>"
      Else
        Response.Write "<b>" & Session("UID") & "</b>"
      End If
    %>
    </p>
    <ul>
     
    <li><a href="passwordprotect.asp">Stránka chráněná heslem</a></li>
    <li><a href="nonsecure.asp">Nezabezpečená stránka</a></li>
    
    </ul>
    </body>
    </html>
    
  5. Klepněte pravým tlačítkem myši na kartu new_page_1.htm a potom klepněte na příkaz Uložit.

    Stránku uložte pod názvem default.asp v kořenové složce webu logon.
  6. Webovou stránku default.asp zavřete klepnutím na příkaz Zavřít v nabídce Soubor.

Vytvoření nezabezpečené stránky

Vytvořte typickou stránku ASP, kterou si může kdokoli zobrazit. K vytvoření nezabezpečené stránky použijte následující kroky:
  1. V aplikaci FrontPage 2003 klepněte na nabídku Soubor, na příkaz Nový a poté na příkaz Prázdná stránka.
  2. Zobrazte kód klepnutím na možnost Kód v zápatí okna dokumentu.
  3. Vyberte a pak odstraňte celý kód HTML webové stránky.
  4. Do webové stránky potom zadejte nebo zkopírujte následující kód HTML.
    <% @language="vbscript" %>
    <html>
    <head><title>Nezabezpečená stránka</title></head>
    <body>
    <h3>Nezabezpečená stránka</h3>
    <p>Jste přihlášení jako: 
    <%
      If Len(Session("UID")) = 0 Then
        Response.Write "<b>Nejste přihlášení.</b>"
      Else
        Response.Write "<b>" & Session("UID") & "</b>"
      End If
    %>
    </p>
    <p><a href="default.asp">Zpět na výchozí</a></p>
    </body>
    </html>
    
  5. Klepněte pravým tlačítkem myši na kartu new_page_1.htm a potom klepněte na příkaz Uložit.

    Stránku uložte pod názvem nonsecure.asp v kořenové složce webu logon.
  6. Webovou stránku nonsecure.asp zavřete klepnutím na příkaz Zavřít v nabídce Soubor.

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

Tato stránka je stejná jako nezabezpečená webová stránka, kterou jste již vytvořili, pouze je třeba přidat do kódu v horní části stránky následující řádek:
<!--#include virtual="/logon/_private/logon.inc"-->
Po přidání tohoto řádku do webové stránky ASP je stránka chráněna heslem pomocí souboru logon.inc, který vytvoříte. K vytvoření webové stránky zabezpečené heslem použijte následující kroky:
  1. V aplikaci FrontPage 2003 klepněte na nabídku Soubor, na příkaz Nový a poté na příkaz Prázdná stránka.
  2. Zobrazte kód klepnutím na možnost Kód v zápatí okna dokumentu.
  3. Vyberte a pak odstraňte celý kód HTML webové stránky.
  4. Do webové stránky potom zadejte nebo zkopírujte následující kód HTML.
    <% @language="vbscript" %>
    <!--#include virtual="/logon/_private/logon.inc"-->
    <html>
    <head><title>Stránka chráněná heslem</title></head>
    <body>
    <h3>Stránka chráněná heslem</h3>
    <p>Jste přihlášení jako: 
    <%
      If Len(Session("UID")) = 0 Then
        Response.Write "<b>Nejste přihlášení.</b>"
      Else
        Response.Write "<b>" & Session("UID") & "</b>"
      End If
    %>
    </p>
    <p><a href="default.asp">Zpět na výchozí</a>
    </body>
    </html>
    
  5. Klepněte pravým tlačítkem myši na kartu new_page_1.htm a potom klepněte na příkaz Uložit.

    Stránku uložte pod názvem passwordprotect.asp v kořenové složce webu logon.
  6. Webovou stránku passwordprotect.asp zavřete klepnutím na příkaz Zavřít v nabídce Soubor.

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

Vytvořte přihlašovací stránku, která vypadá podobně jako typické přihlašovací dialogové okno systému Windows. Uživatelé, kteří se pokusí přihlásit na webovou stránku chráněnou heslem, jsou přesměrováni na tuto stránku, aby zadali své uživatelské jméno a heslo. K vytvoření přihlašovací stránky použijte následující kroky:
  1. V aplikaci FrontPage 2003 klepněte na nabídku Soubor, na příkaz Nový a poté na příkaz Prázdná stránka.
  2. Zobrazte kód klepnutím na možnost Kód v zápatí okna dokumentu.
  3. Vyberte a pak odstraňte celý kód HTML webové stránky.
  4. Do webové stránky potom zadejte nebo zkopírujte následující kód HTML.
    <% @language="vbscript" %>
    <!--#include virtual="/logon/_private/logon.inc"-->
    <%
      ' Byla tato stránka odeslána?
      If UCase(Request.ServerVariables("HTTP_METHOD")) = "POST" Then
        ' Pokud ano, zkontrolujte zadané uživatelské jméno a heslo.
        If ComparePassword(Request("UID"),Request("PWD")) Then
          ' Pokud srovnání prokázalo shodu, uloží se uživatelské jméno...
          Session("UID") = Request("UID")
          ' ...a proběhne přesměrování zpět na původní stránku.
          Response.Redirect Session("REFERRER")
        End If
      End If
    %>
    <html>
    <head><title>Přihlašovací stránka</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. Klepněte pravým tlačítkem myši na kartu new_page_1.htm a potom klepněte na příkaz Uložit.

    Stránku uložte pod názvem logon.asp v kořenové složce webu logon.
  6. Webovou stránku logon.asp zavřete klepnutím na příkaz Zavřít v nabídce Soubor.

Vytvoření souboru include pro přihlášení

Tento soubor poskytuje funkce uživatelského jména a hesla a je užíván webovou stránkou chráněnou heslem i přihlašovací webovou stránkou. K vytvoření souboru zahrnujícího přihlášení použijte následující kroky:
  1. V aplikaci FrontPage 2003 klepněte na nabídku Soubor, na příkaz Nový a poté na příkaz Prázdná stránka.
  2. Zobrazte kód klepnutím na možnost Kód v zápatí okna dokumentu.
  3. Vyberte a pak odstraňte celý kód HTML webové stránky.
  4. Do webové stránky potom zadejte nebo zkopírujte následující kód HTML.
    <%
      ' Tato stránka se nezapisuje do mezipaměti.
      Response.CacheControl = "no-cache"
    
      ' Definuje název tabulky uživatelů.
      Const USERS_TABLE  = "tblUsers"
      ' Definuje cestu k přihlašovací stránce.
      Const LOGON_PAGE   = "/logon/logon.asp"
      ' Definuje cestu k přihlašovací databázi.
      Const MDB_URL      = "/logon/_private/logon.mdb"
    
      ' Zkontroluje, zda užíváte aktuální uživatelské jméno.
      If Len(Session("UID")) = 0 Then
        ' Jste nyní na přihlašovací stránce?
        If LCase(LOGON_PAGE) <> LCase(Request.ServerVariables("URL")) Then
          ' Pokud ne, nastaví se proměnná relace pro stránku, která vyslala požadavek...
          Session("REFERRER") = Request.ServerVariables("URL")
          ' ...a proběhne přesměrování na přihlašovací stránku.
          Response.Redirect LOGON_PAGE
        End If
      End If
    
      ' Tato funkce zkontroluje kombinaci uživatelského jména a hesla.
      Function ComparePassword(UID,PWD)
        ' Definuje vaše proměnné.
        Dim strSQL, objCN, objRS
        ' Nastaví váš řetězec SQL.
        strSQL = "SELECT * FROM " & USERS_TABLE & _
          " WHERE (UID='" & ParseText(UID) & _
          "' AND PWD='" & ParseText(PWD) & "');"
        ' Vytvoří objekt připojení k databázi.
        Set objCN = Server.CreateObject("ADODB.Connection")
        ' Otevře objekt připojení k databázi.
        objCN.Open "driver={Microsoft Access Driver (*.mdb)}; dbq=" & _
          Server.MapPath(MDB_URL) & "; uid=admin; pwd="
        ' Spustí databázový dotaz.
        Set objRS = objCN.Execute(strSQL)
        ' Nastaví pro vyhledávání v databázi stav Pravda / Nepravda.
        ComparePassword = Not(objRS.EOF)
        ' Zavře vaše databázové objekty.
        Set objRS = Nothing
        Set objCN = Nothing
      End Function
    
      ' Tato funkce omezuje text na pouze alfanumerická data.
      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. Klepněte pravým tlačítkem myši na kartu new_page_1.htm a potom klepněte na příkaz Uložit.

    Stránku uložte pod názvem logon.inc ve složce _private webu logon.
  6. Soubor logon.inc zavřete klepnutím na příkaz Zavřít v nabídce Soubor.

Testování přihlašovací webové stránky

K testování použijte následující kroky:
  1. V podokně Seznam složek aplikace FrontPage 2003 klepněte pravým tlačítkem myši na položku Default.asp a potom klepněte na příkaz Náhled v prohlížeči.

    Webový prohlížeč načte ukázkovou domovskou stránku a zobrazí zprávu o tom, že nejste přihlášeni.
  2. Klepněte na odkaz Nonsecure page.

    Stránka se načte a zobrazí se zpráva, že nejste přihlášeni. Klepnutím na odkaz Back to default se vraťte na výchozí stránku.
  3. Klepněte na odkaz Password-Protected page.

    Místo stránky chráněné heslem se načte stránka logon.asp.
  4. Do pole User Name zadejte testuser, do pole Password zadejte password a potom klepněte na tlačítko LOGON.

    Zobrazí se stránka chráněná heslem a zpráva, že jste přihlášeni jako testuser. Klepnutím na odkaz Back to default se vraťte na výchozí stránku. Načte se domovská stránka a zpráva, že jste přihlášeni jako testuser.
  5. Klepněte na odkaz Nonsecure page.

    Načte se nezabezpečená stránka a zpráva, že jste přihlášeni jako testuser.

Úprava webu logon

Ukázkový web logon můžete upravit následujícími způsoby:
  • Přidání uživatelských jmen a hesel. Můžete otevřít databázi. Klepněte pravým tlačítkem myši na databázi v aplikaci FrontPage 2003 a potom přidejte uživatele do tabulky tblUsers.
  • Ochrana dalších webových stránek heslem. K ochraně další webové stránky na webu je třeba soubor uložit s příponou ASP, například Mypage.asp, a potom na začátek souboru přidat následující dva řádky:
    <% @language="vbscript" %>
    <!--#include virtual="/logon/_private/logon.inc"-->
    
    První řádek určuje, že se jako skriptovací jazyk užívá Microsoft Visual Basic Scripting Edition (VBScript), druhý řádek vkládá funkci uživatelského jména a hesla ze souboru include pro přihlášení, který jste vytvořili dříve.

Další informace

Uživatelská jména a hesla uložená v databázi nejsou šifrována. Tato data nelze zašifrovat ani pomocí vstupní masky hesla. Z těchto a dalších důvodů by se databáze aplikace Access neměly používat pro provozní weby. Další informace o zvýšení zabezpečení komunikace mezi klientem a serverem prostřednictvím protokolu HTTP najdete v následujících článcích znalostní báze Microsoft Knowledge Base:
299525 Jak nastavit protokol SSL pomocí služby IIS 5.0 a serveru Certificate Server 2.0 (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
299875 Jak implementovat protokol SSL ve službě IIS (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)

Odkazy

Další informace o integrování stránek ASP (Active Server Pages) do databází najdete v následujících článcích znalostní báze Microsoft Knowledge Base:
299987 Jak užívat databáze a relace ASP k implementaci zabezpečení ASP (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
300382 Jak vytvořit připojení k databázi ze stránky ASP ve službě IIS (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
318287 Co je třeba k užití stránek ASP (Active Server Pages) v aplikaci FrontPage 2002 (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)

Vlastnosti

ID článku: 825498 - Poslední aktualizace: 21. února 2007 - Revize: 5.1
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft Office SharePoint Designer 2007
  • Microsoft Office FrontPage 2003
Klíčová slova: 
kbdatabase kbasp kbhowtomaster KB825498

Dejte nám zpětnou vazbu

 

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