Jelszóval védett weblap létrehozása a FrontPage 2003 program, az Active Server Pages szolgáltatás, illetve Access-adatbázisok segítségével

A cikk Microsoft FrontPage 2002 alkalmazásra vonatkozó változata a Microsoft Tudásbázis alábbi számú cikke: 321439 (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.).

A cikk Microsoft FrontPage 2000 alkalmazásra vonatkozó változata a Microsoft Tudásbázis alábbi számú cikke: 321503 (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.).

Összefoglaló

Ebben a lépesenkénti útmutatóban megismerkedhet a FrontPage 2003 program, az Active Server Pages (ASP) szolgáltatás, illetve az Access-adatbázisok egyszerű, jelszóval védett weblap létrehozására történő alkalmazásával.

Fontos
  • A cikkben szereplő példakód nem helyettesíti a FrontPage 2003 beépített biztonsági funkcióját. A példák egy egyszerű biztonsági eljárást ismertetnek, amely csak az adott webhelyre ellátogató felhasználókat érinti. A FrontPage 2003 biztonsági eljárása nem integrálható a Microsoft Access-adatbázisba rögzített felhasználónevekkel és jelszavakkal.
  • A beírt felhasználónevek és jelszavak egyszerű szöveg formájában az interneten keresztül kerülnek továbbításra. A nagyobb biztonság érdekében a Microsoft azt javasolja, hogy SSL titkosítást alkalmazó webkiszolgálót használjon. További információért forduljon a webhely rendszergazdájához vagy az internetszolgáltatóhoz.

Az ASP-funkciók használata a FrontPage 2003 alkalmazásban

Az ASP-funkciókat csak akkor használhatja a FrontPage 2003 alkalmazásban, ha ASP szolgáltatást támogató webkiszolgálóhoz vagy lemezalapú webhelyhez való hozzáféréssel rendelkezik.

Új webhely létrehozása a FrontPage 2003 alkalmazásban

Megjegyzés: A példa csak akkor alkalmazható, ha a webhely neveként a logon elnevezést használja, és a webhelyet saját gyökérwebhelyén kívül, alwebhelyként hozza létre. Ha nem a logon nevet használja, vagy a webhelyet máshol hozza létre, módosítania kell a cikkben szereplő, vonatkozó lépéseket.

Kövesse az alábbi lépéseket új webhely létrehozásához a FrontPage 2003 alkalmazásban:
  1. Indítsa el a FrontPage 2003 programot.
  2. Kattintson a Fájl menü Új parancsára.
  3. A megjelenő munkaablakban kattintson a További webhelysablonok, majd az Üres webhely elemre.
  4. A Beállítások részben írja be a következő formátumban a webhely kívánt helyét:
    http://kiszolgálónév/logon
    A címben a kiszolgálónév az ASP-szolgáltatást támogató webkiszolgáló neve.
  5. Kattintson az OK gombra.
A logon nevű új webhely megnyílik a FrontPage 2003 programban.

Adatbázis létrehozása

Adatbázis-kezelő program – például Microsoft Office Access 2003 – segítségével hozza létre a felhasználóneveket és jelszavakat tartalmazó adatbázist.

Megjegyzés: Ha az adatbázis létrehozásához nem az Access 2003 alkalmazást használja, módosítsa a vonatkozó lépéseket.

Az adatbázis létrehozásához tegye a következőket:
  1. Indítsa el az Access 2003 programot.
  2. Kattintson a Fájl menü Új parancsára.
  3. A megjelenő munkaablakban kattintson az Üres adatbázis elemre.
  4. Fájlnévnek írja be a logon.mdb nevet, majd kattintson a Létrehozás gombra.
  5. Az Objektumok panelen kattintson a Táblák elemre, majd az Új ikonra.
  6. Kattintson a Tervező nézet elemre, majd az OK gombra.
  7. A Mezőnév oszlop első sorába írja be a következőt: UID.
  8. Az Adattípus oszlop kapcsolódó cellájában válassza a Szöveg értéket, majd az eszköztáron kattintson az Elsődleges kulcs ikonra (amelynek egy kulcs a szimbóluma).
  9. A Mezőnév oszlop második sorába írja be a PWD szót, majd kattintson a Szöveg elemre az Adattípus oszlop második sorában.
  10. Kattintson a Fájl menü Mentés parancsára.
  11. A Táblanév mezőbe írja be a tblUsers szót, majd kattintson az OK gombra.
  12. Kattintson a Nézet menü Adatlap nézet parancsára.
  13. Az UID oszlopba írja be a tesztfelhasználó nevet.

    A PWD oszlopba írja be a jelszó szót.
  14. Kattintson a Fájl menü Bezárás parancsára, majd lépjen ki az Access 2003 alkalmazásból.
Megjegyzés: Biztonsági okokból a jelszavak csak kis- és nagybetűket, valamint számokat tartalmazhatnak.

Az adatbázis importálása

Importálja a létrehozott felhasználónév- és jelszóadatbázist a FrontPage 2003 programba. Ehhez tegye a következőket:
  1. A FrontPage 2003 programban nyissa meg a logon webhelyet, majd kattintson a Fájl menü Importálás parancsára.
  2. Kattintson a Fájl hozzáadása elemre, majd keresse meg és jelölje ki a létrehozott logon.mdb fájlt.

    Kattintson a Megnyitás gombra.
  3. Kattintson a Módosítás lehetőségre, írja be a _private/logon.mdb elérési utat a Fájl elérési útja a webhelyen belül mezőbe, majd kattintson az OK gombra.

    Megjegyzés: Ügyeljen a fájl elérési útjában a „private” szó előtt szereplő aláhúzásjelre (_).
  4. Kattintson az OK gombra az adatbázisfájl importálásához.
  5. Ha a rendszer rákérdez az importált fájllal történő adatbázis-kapcsolat létrehozására, kattintson a Nem gombra.

ASP-oldalak létrehozása

Ebben a példában több fájlt is létre kell hoznia. Először készítse el webhelye kezdőlapját, azután egy „nem biztonságos”, illetve egy jelszóval védett oldalt teszteléshez, majd hozza létre a bejelentkezési weblapot és a bejelentkezési beszerkeszthető fájlt.

A kezdőlap létrehozása

Ez az oldal a webhely alapértelmezett oldala, amely a létrehozott nem biztonságos és jelszóval védett weblapokra mutató hivatkozásokat tartalmaz. A kezdőlap létrehozásához tegye a következőket:
  1. A FrontPage 2003 programban kattintson a Fájl menü Új parancsára, majd az Üres lap lehetőségre.
  2. A dokumentumablak alján kattintson a Kód elemre a kódnézet megjelenítéséhez.
  3. Jelölje ki és törölje a weblapon szereplő összes HTML-kódot.
  4. Írja be vagy szúrja be innen a következő HTML-kódot a weblapra:
    <% @language="vbscript" %>
    <html>
    <head><title>Kezdőlap</title></head>
    <body>
    <h3>Kezdőlap</h3>
    <p>Bejelentkezve:
    <%
    If Len(Session("UID")) = 0 Then
    Response.Write "<b>Ön nincs bejelentkezve.</b>"
    Else
    Response.Write "<b>" & Session("UID") & "</b>"
    End If
    %>
    </p>
    <ul>

    ><a href="passwordprotect.asp">Jelszóval védett oldal</a></li>
    <li><a href="nonsecure.asp">Nem biztonságos oldal</a></li>

    </ul>
    </body>
    </html>
  5. Kattintson a jobb gombbal a new_page_1.htm fájlra, majd kattintson a Mentés parancsra.

    Mentse a lapot default.asp néven a webhely gyökérmappájába.
  6. A default.asp weblap bezárásához kattintson a Fájl menü Bezárás parancsára.

Nem biztonságos oldal létrehozása

Hozzon létre egy mindenki által megtekinthető, normál ASP-oldalt. Ehhez tegye a következőket:
  1. A FrontPage 2003 programban kattintson a Fájl menü Új parancsára, majd az Üres lap lehetőségre.
  2. A dokumentumablak alján kattintson a Kód elemre a kódnézet megjelenítéséhez.
  3. Jelölje ki és törölje a weblapon szereplő összes HTML-kódot.
  4. Írja be vagy szúrja be innen a következő HTML-kódot a weblapra:
    <% @language="vbscript" %>
    <html>
    <head><title>Nem biztonságos oldal</title></head>
    <body>
    <h3>Nem biztonságos oldal</h3>
    <p>Bejelentkezve:
    <%
    If Len(Session("UID")) = 0 Then
    Response.Write "<b>Ön nincs bejelentkezve.</b>"
    Else
    Response.Write "<b>" & Session("UID") & "</b>"
    End If
    %>
    </p>
    <p><a href="default.asp">Vissza az alapértelmezett oldalra</a></p>
    </body>
    </html>
  5. Kattintson a jobb gombbal a new_page_1.htm fájlra, majd kattintson a Mentés parancsra.

    Mentse a lapot nonsecure.asp néven a webhely gyökérmappájába.
  6. A nonsecure.asp weblap bezárásához kattintson a Fájl menü Bezárás parancsára.

A jelszóval védett oldal létrehozása

Ez az oldal megegyezik az előző lépésben létrehozott nem biztonságos oldallal, azzal a különbséggel, hogy itt az oldal elejére be kell írni a következő kódsort:
<!--#include virtual="/logon/_private/logon.inc"-->
Ha hozzáadja ezt a kódsort az ASP-weblapokhoz, azok a létrehozott logon.inc fájl révén jelszóval védettek lesznek. Jelszóval védett weblap létrehozásához tegye a következőket:
  1. A FrontPage 2003 programban kattintson a Fájl menü Új parancsára, majd az Üres lap lehetőségre.
  2. A dokumentumablak alján kattintson a Kód elemre a kódnézet megjelenítéséhez.
  3. Jelölje ki és törölje a weblapon szereplő összes HTML-kódot.
  4. Írja be vagy szúrja be innen a következő HTML-kódot a weblapra:
    <% @language="vbscript" %>
    <!--#include virtual="/logon/_private/logon.inc"-->
    <html>
    <head><title>Jelszóval védett oldal</title></head>
    <body>
    <h3>Jelszóval védett oldal</h3>
    <p>Bejelentkezve:
    <%
    If Len(Session("UID")) = 0 Then
    Response.Write "<b>Ön nincs bejelentkezve.</b>"
    Else
    Response.Write "<b>" & Session("UID") & "</b>"
    End If
    %>
    </p>
    <p><a href="default.asp">Vissza az alapértelmezett oldalra</a>/p>
    </body>
    </html>
  5. Kattintson a jobb gombbal a new_page_1.htm fájlra, majd kattintson a Mentés parancsra.

    Mentse a lapot passwordprotect.asp néven a webhely gyökérmappájába.
  6. A passwordprotect.asp weblap bezárásához kattintson a Fájl menü Bezárás parancsára.

A bejelentkezési oldal létrehozása

Hozzon létre egy, a Windows bejelentkezési párbeszédpaneljéhez hasonló bejelentkezési oldalt. A jelszóval védett weblapot megtekinteni kívánó felhasználókat a rendszer erre az oldalra küldi felhasználónevük és jelszavuk megadása érdekében. A bejelentkezési oldal létrehozásához tegye a következőket:
  1. A FrontPage 2003 programban kattintson a Fájl menü Új parancsára, majd az Üres lap lehetőségre.
  2. A dokumentumablak alján kattintson a Kód elemre a kódnézet megjelenítéséhez.
  3. Jelölje ki és törölje a weblapon szereplő összes HTML-kódot.
  4. Írja be vagy szúrja be innen a következő HTML-kódot a weblapra:
    <% @language="vbscript" %>
    <!--#include virtual="/logon/_private/logon.inc"-->
    <%
    ' El lett küldve az oldal?
    If UCase(Request.ServerVariables("HTTP_METHOD")) = "POST" Then
    ' Ha igen, a megadott felhasználónév-jelszó páros ellenőrzése.
    If ComparePassword(Request("UID"),Request("PWD")) Then
    ' Ha a megadott jelszó megfelelő, a felhasználónév mentése...
    Session("UID") = Request("UID")
    ' ...és visszatérés az eredeti oldalra.
    Response.Redirect Session("REFERRER")
    End If
    End If
    %>
    <html>
    <head><title>Bejelentkezési oldal</title>/head>
    <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">Felhasználónév és jelszó megadása</th>
    </tr>
    <tr>
    <td>&#xa0;</td>
    <td colspan="2" align="left">Adja meg felhasználónevét és jelszavát</td>
    <td>&#xa0;</td>
    </tr>
    <tr>
    <td>&#xa0;</td>
    <td align="left">Webhely</td>
    <td align="left"><%=Request.ServerVariables("SERVER_NAME")%> &#xa0;</td>
    <td>&#xa0;</td>
    </tr>
    <tr>
    <td>&#xa0;</td>
    <td align="left">Felhasználónév</td>
    <td align="left"><input name="UID" type="text" size="20"></td>
    <td>&#xa0;</td>
    </tr>
    <tr>
    <td>&#xa0;</td>
    <td align="left">Jelszó</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="BEJELENTKEZÉS"></td>
    <td>&#xa0;</td>
    </tr>
    </table>
    </form>
    </center></div>
    </body>
    </html>
  5. Kattintson a jobb gombbal a new_page_1.htm fájlra, majd kattintson a Mentés parancsra.

    Mentse a lapot logon.asp néven a webhely gyökérmappájába.
  6. A logon.asp weblap bezárásához kattintson a Fájl menü Bezárás parancsára.

A bejelentkezési beszerkeszthető fájl létrehozása

A beszerkeszthető fájl a felhasználónévvel és jelszóval történő bejelentkezést biztosítja, amit a jelszóval védett és a a bejelentkezési weblap is használ. A bejelentkezési beszerkeszthető fájl létrehozásához tegye a következőket:
  1. A FrontPage 2003 programban kattintson a Fájl menü Új parancsára, majd az Üres lap lehetőségre.
  2. A dokumentumablak alján kattintson a Kód elemre a kódnézet megjelenítéséhez.
  3. Jelölje ki és törölje a weblapon szereplő összes HTML-kódot.
  4. Írja be vagy szúrja be innen a következő HTML-kódot a weblapra:
    <%
    ' Az oldal gyorsítótárazásának mellőzése.
    Response.CacheControl = "no-cache"

    ' A felhasználói tábla nevének megadása.
    Const USERS_TABLE = "tblUsers"
    ' A bejelentkezési oldal elérési újtának megadása.
    Const LOGON_PAGE = "/logon/logon.asp"
    ' A bejelentkezési adatbázis elérési újtának megadása.
    Const MDB_URL = "/logon/_private/logon.mdb"

    ' Annak ellenőrzése, hogy a felhasználónak van-e aktuális felhasználóneve.
    If Len(Session("UID")) = 0 Then
    ' A felhasználó már a bejelentkezési oldalon van?
    If LCase(LOGON_PAGE) <> LCase(Request.ServerVariables("URL")) Then
    ' Ha nem, a kérést indító oldal munkamenet-változójának beállítása...
    Session("REFERRER") = Request.ServerVariables("URL")
    ' ...és visszatérés a bejelentkezési oldalra.
    Response.Redirect LOGON_PAGE
    End If
    End If

    ' Az alábbi függvény a felhasználónév-jelszó párost ellenőrzi.
    Function ComparePassword(UID,PWD)
    ' A változók megadása.
    Dim strSQL, objCN, objRS
    ' Az SQL-karakterlánc beállítása.
    strSQL = "SELECT * FROM " & USERS_TABLE & _
    " WHERE (UID='" & ParseText(UID) & _
    "' AND PWD='" & ParseText(PWD) & "');"
    ' Az adatbázis-kapcsolat objektumának létrehozása.
    Set objCN = Server.CreateObject("ADODB.Connection")
    ' Az adatbázis-kapcsolat objektumának megnyitása.
    objCN.Open "driver={Microsoft Access Driver (*.mdb)}; dbq=" & _
    Server.MapPath(MDB_URL) & "; uid=admin; pwd="
    ' Az adatbázis-lekérdezés futtatása.
    Set objRS = objCN.Execute(strSQL)
    ' Az adatbázis-keresés állapotának igaz vagy hamis értékre történő állítása.
    ComparePassword = Not(objRS.EOF)
    ' Az adatbázis-objektumok bezárása.
    Set objRS = Nothing
    Set objCN = Nothing
    End Function

    ' Az alábbi függvény a szöveget alfanumerikus típusúra korlátozza.
    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. Kattintson a jobb gombbal a new_page_1.htm fájlra, majd kattintson a Mentés parancsra.

    Mentse a lapot logon.inc néven a bejelentkezési webhely _private mappájába.
  6. A logon.inc fájl bezárásához kattintson a Fájl menü Bezárás parancsára.

A logon webhely tesztelése

A teszteléshez tegye a következőket:
  1. A FrontPage 2003 program Mappalista paneljén kattintson a jobb gombbal a Default.asp fájlra, majd kattintson a Megtekintés böngészővel elemre.

    A webböngésző betölti a példaként létrehozott kezdőlapot, és jelzi, hogy még nincs bejelentkezve.
  2. Kattintson a Nem biztonságos oldal hivatkozásra.

    Megjelenik az oldal, és jelzi, hogy még nincs bejelentkezve. A kezdőlapra történő visszatéréshez kattintson a Vissza az alapértelmezett oldalra hivatkozásra.
  3. Kattintson a Jelszóval védett oldal hivatkozásra.


    A jelszóval védett oldal helyett megjelenik a bejelentkezési logon.asp oldal.
  4. A Felhasználónév mezőbe írja be a tesztfelhasználó nevet, írja be a jelszó szót a Jelszó mezőbe, és kattintson a BEJELENTKEZÉS gombra.


    Megjelenik a jelszóval védett oldal, és jelzi, hogy be van jelentkezve tesztfelhasználó néven. A kezdőlapra történő visszatéréshez kattintson a Vissza az alapértelmezett oldalra hivatkozásra. Megjelenik a kezdőlap, és jelzi, hogy be van jelentkezve tesztfelhasználó néven.
  5. Kattintson a Nem biztonságos oldal hivatkozásra.

    Megjelenik az oldal, és jelzi, hogy be van jelentkezve tesztfelhasználó néven.

A logon webhely testreszabása

A példaként szolgáló logon webhely igény szerint módosítható az alábbiaknak megfelelően:
  • Felhasználónevek és jelszavak hozzáadása az adatbázishoz: Megnyitásához kattintson duplán a FrontPage 2003 programban az adatbázisra, majd adja hozzá a kívánt felhasználókat a tblUsers táblához.
  • Más weblapok jelszóval történő védelme: A webhely más weblapjainak jelszóvédelemmel való ellátásához mentse a vonatkozó fájlt ASP-fájlnévkiterjesztéssel, például Mypage.asp, majd adja hozzá az alábbi két sort a fájl legelejéhez:
    <% @language="vbscript" %>
    <!--#include virtual="/logon/_private/logon.inc"-->
    Az első sor megadja, hogy parancsnyelvként a Microsoft Visual Basic Scripting Edition (VBScript) nyelvet használja, a második sor pedig a korábban létrehozott, felhasználónévvel és jelszóval történő bejelentkezést biztosító beszerkeszthető fájlt tartalmazza.

További információ

Az adatbázisban tárolt felhasználónevek és jelszavak nem titkosítottak. Ezeket az adatokat még a jelszóbeviteli maszk használata sem titkosítja. Emiatt – és egyéb okoknál fogva – az Access adatbázis nem használható webhelyek létrehozásánál. Az ügyfél és kiszolgáló közötti HTTP-kommunikáció biztonságossá tételéről a Microsoft Tudásbázis alábbi cikkeiben tájékozódhat:

299525 Az SSL beállítása az IIS 5.0 és a Certificate Server 2.0 szolgáltatásokkal (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)
299875 Az SSL protokoll implementálása az IIS szolgáltatásban (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)

Hivatkozások

Az Active Server Pages (ASP) szolgáltatás adatbázisokkal történő integrálásáról a Microsoft Tudásbázis alábbi cikkeiben tájékozódhat:

299987 Adatbázison és ASP-munkameneteken alapuló biztonsági mechanizmus kialakítása ASP-alkalmazásokban (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)
300382 Adatbázis-kapcsolat létrehozása ASP-oldalakról az IIS szolgáltatásban (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)
318287 ASP a FrontPage 2002 alkalmazásban (Előfordulhat, hogy a hivatkozás részben vagy teljes egészében angol nyelvű tartalomra mutat.)
Tulajdonságok

Cikkazonosító: 825498 - Utolsó ellenőrzés: 2008. máj. 15. - Verziószám: 1

Visszajelzés