Comment créer une page Web qui est protégée par mot de passe à l'aide Expression Web, pages et une base de données Access

Traductions disponibles Traductions disponibles
Numéro d'article: 928706 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Résumé

Cet article étape par étape explique comment créer une solution simple page Web qui fournit la protection par mot de passe à l'aide Microsoft Expression Web, ASP (Active Server Pages) et une base de données Microsoft Access.
  • le code d'exemple dans cet article n'est pas conçu pour remplacer la fonctionnalité de sécurité intégrées Expression Web. Les exemples sont conçus pour offrir un mécanisme de sécurité simple uniquement pour les utilisateurs qui naviguent sur votre site Web. Par conséquent, la sécurité Web expression ne pas intégrer les noms d'utilisateur et les mots de passe qui sont ajoutés à la base de données Access.
  • noms l'utilisateur et mots de passe entrés dans sont transmis sur Internet en texte brut. Pour vous aider à améliorer la sécurité, nous vous recommandons d'utiliser un serveur Web qui permet le chiffrement SSL (Secure Sockets Layer). Pour plus d'informations, contactez votre administrateur de site Web ou votre fournisseur de services Internet (ISP).

Introduction

Cet article explique comment créer une page Web qui est protégée par mot de passe à l'aide de Expression Web, ASP et une base de données Access.

Plus d'informations

Utiliser les fonctionnalités ASP dans Expression Web

Avant d'utiliser les fonctionnalités ASP dans Expression Web, vous devez avoir accès à un serveur Web ou à un site Web sur disque qui prend en charge ASP..

Créer un nouveau site Web dans Expression Web

note Les informations de l'exemple suppose que vous nommez une ouverture de session site Web et que le site d'ouverture de session est créé comme une sous-routine Web sous la racine de votre site Web. Si vous utilisez un nom de connexion, ou créez un site Web dans un autre emplacement, vous devez modifier en conséquence les étapes décrites dans cet article.

Pour créer un nouveau site Web dans Expression Web, procédez comme suit :
  1. Démarrez Expression Web.
  2. Dans le menu Fichier , cliquez sur Nouveau , puis cliquez sur site Web.
  3. Dans la boîte de dialogue Nouveau , cliquez sur vide un site Web dans l'onglet site Web .
  4. Dans la zone Indiquez l'emplacement du nouveau site Web , tapez l'emplacement dans lequel vous souhaitez stocker le nouveau site Web dans le format suivant :

    http:// nom_serveur / d'ouverture de session
  5. Cliquez sur OK .
Le site Web nouveau vide nommé d'ouverture de session est ouvert dans Expression Web.

Créer une base de données

Vous pouvez créer la base de données pour stocker des noms d'utilisateur et mots de passe à l'aide d'un programme de base de données tel que Microsoft Office Access 2003.

note Si vous utilisez un programme de base de données autres que Access 2003 pour créer la base de données, modifiez ces étapes en conséquence.

Pour créer une base de données, procédez comme suit :
  1. Démarrez Access 2003.
  2. Dans le menu Fichier , cliquez sur Nouveau .
  3. Dans le volet Office, cliquez sur base de données vide .
  4. Tapez logon.mdb pour le nom de fichier et puis cliquez sur Créer .
  5. Dans le volet objets , cliquez sur tables , puis cliquez sur Nouveau .
  6. Cliquez sur mode Création , puis cliquez sur OK .
  7. Dans la première ligne de la colonne Nom du champ , tapez UID .
  8. Dans la colonne Type de données correspondante, cliquez sur le texte , puis cliquez sur le bouton de la clé primaire dans la barre d'outils.

    note Le bouton de la clé primaire s'affiche qu'un symbole de clé.
  9. Dans la deuxième ligne de la colonne Nom du champ , tapez PWD et puis cliquez sur texte dans la deuxième ligne de la colonne Type de données .
  10. Dans le menu Fichier , cliquez sur Enregistrer .
  11. Dans la zone Nom de la table , tapez tblUsers et puis cliquez sur OK .
  12. Dans le menu Affichage , cliquez sur mode Feuille de données .
  13. Dans la colonne UID , tapez testuser .
    Dans la colonne PWD , tapez le mot de passe .
  14. Dans le menu Fichier , cliquez sur Fermer et quittez Access 2003.
note Pour des raisons de sécurité, les mots de passe sont limités à un mélange de majuscules, minuscules et chiffres.

Importation de la base de données

Importer la base de données que vous avez créée dans les noms d'utilisateur banque et les mots de passe dans Expression Web. Pour ce faire, procédez comme suit :
  1. Dans l'expression Web, ouvrez votre site Web d'ouverture de session, cliquez sur Importer dans le menu Fichier et puis cliquez sur le fichier .
  2. Cliquez sur Ajouter un fichier , recherchez et puis cliquez sur le fichier logon.mdb que vous avez créé et puis cliquez sur Ouvrir .
  3. Cliquez sur Modifier , tapez _private/logon.mdb dans la zone de texte Emplacement du fichier dans votre site web et puis cliquez sur OK .

    note Il existe un caractère de trait de soulignement (_) en regard de « privé » dans le chemin d'accès du fichier.
  4. Cliquez sur OK pour importer le fichier de base de données.
  5. Si vous êtes invité pour créer une connexion de base de données pour ce fichier importé, cliquez sur non .

Créer les pages ASP

Vous devez créer plusieurs fichiers pour travailler avec cet exemple. Tout d'abord, créez une page d'accueil votre site Web de, une page "non sécurisée" et une page qui est protégée pour le test, la page Web d'ouverture de session, et l'ouverture de session inclure de fichier.

Microsoft fournit des exemples de programmation pour illustration uniquement, sans garantie explicite ou implicite. Cela inclut, mais n'est pas limité aux garanties implicites de qualité marchande ou d'adéquation à un usage particulier. Cet article suppose que vous êtes familiarisé avec le langage de programmation présenté et les outils qui sont utilisés pour créer et déboguer des procédures. Les techniciens du support technique Microsoft peuvent vous expliquer les fonctionnalités d'une procédure particulière. Toutefois, ils ne modifieront pas les exemples en vue de fournir des fonctionnalités supplémentaires ou de créer des procédures répondant à vos besoins spécifiques.

Créer la page d'accueil

Cette page sert de la page par défaut pour votre site. Il contient des liens à la page non sécurisée et à la page Web protégée que vous créez. Pour créer une page d'accueil, procédez comme suit :
  1. Dans Expression Web, cliquez sur Nouveau dans le menu Fichier , puis cliquez sur la page .
  2. Dans la boîte de dialogue Nouveau , cliquez sur HTML dans l'onglet de page et puis cliquez sur OK .
  3. Dans la zone Pied de page de la fenêtre du document, cliquez sur code pour afficher le mode code.
  4. Sélectionnez et supprimez tout le code HTML dans la page Web.
  5. Tapez ou collez le code HTML suivant dans le @language page.
    <% @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. Enregistrez la page sous default.asp dans le dossier racine de votre site Web d'ouverture de session.
  7. Dans le menu Fichier , cliquez sur Fermer pour fermer la page Web default.asp.

Créer la page non sécurisée

Créer une page ASP classique que tous les utilisateurs peuvent afficher. Pour créer une page non sécurisée, procédez comme suit :
  1. Dans Expression Web, cliquez sur Nouveau dans le menu Fichier , puis cliquez sur la page .
  2. Dans la boîte de dialogue Nouveau , cliquez sur HTML dans l'onglet de page et puis cliquez sur OK .
  3. Dans la zone Pied de page de la fenêtre du document, cliquez sur code pour afficher le mode code.
  4. Sélectionnez et supprimez tout le code HTML dans la page Web.
  5. Tapez ou collez le code HTML suivant dans le @language page.
    <% @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. Enregistrez la page sous nonsecure.asp dans le dossier racine de votre site Web d'ouverture de session.
  7. Dans le menu Fichier , cliquez sur Fermer pour fermer la page Web nonsecure.asp.

Créer la page protégée

La page dans cette étape est identique à la page Web non sécurisée que vous avez créé précédemment, sauf que vous devez ajouter le code suivant en haut du mode code :
<!--#include virtual="/logon/_private/logon.inc"-->
Lorsque vous ajoutez cette ligne de code à une page ASP, cette page est protégée par mot de passe par le fichier logon.inc que vous créez. Pour créer une page Web qui est protégée par mot de passe, procédez comme suit :
  1. Dans Expression Web, cliquez sur Nouveau dans le menu Fichier , puis cliquez sur la page .
  2. Dans la boîte de dialogue Nouveau , cliquez sur HTML dans l'onglet de page et puis cliquez sur OK .
  3. Dans la zone Pied de page de la fenêtre du document, cliquez sur code pour afficher le mode code.
  4. Sélectionnez et supprimez tout le code HTML dans la page Web.
  5. Tapez ou collez le code HTML suivant dans le @language page.
    <% @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. Enregistrez la page sous passwordprotect.asp dans le dossier racine de votre site Web d'ouverture de session.
  7. Dans le menu Fichier , cliquez sur Fermer pour fermer la page Web passwordprotect.asp.

Créer la page d'ouverture de session

Créer une ouverture de session page ressemble à une boîte de dialogue d'ouverture de session Windows classique. Utilisateurs, essayez d'accéder à la page Web protégée sont envoyées à cette page à taper leurs noms d'utilisateur et mots de passe. Pour créer une page d'ouverture de session, procédez comme suit :
  1. Dans Expression Web, cliquez sur Nouveau dans le menu Fichier , puis cliquez sur la page .
  2. Dans la boîte de dialogue Nouveau , cliquez sur HTML dans l'onglet de page et puis cliquez sur OK .
  3. Dans la zone Pied de page de la fenêtre du document, cliquez sur code pour afficher le mode code.
  4. Sélectionnez et supprimez tout le code HTML dans la page Web.
  5. Type or paste the following HTML code in the Web page.
    <% @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. Enregistrez la page logon.asp dans le dossier racine de votre site Web d'ouverture de session en tant que.
  7. Dans le menu Fichier , cliquez sur Fermer pour fermer la page Web logon.asp.

Créer l'ouverture de session inclure de fichier

Le fichier include fournit la fonctionnalité de nom et le mot de passe utilisateur. Il peut servir par la page Web protégée et la page Web d'ouverture de session. Pour créer l'ouverture de session inclure de fichier, procédez comme suit :
  1. Dans l'expression Web Designer, cliquez sur Nouveau dans le menu Fichier et puis cliquez sur la page .
  2. Dans la boîte de dialogue Nouveau , cliquez sur HTML dans l'onglet de page et puis cliquez sur OK .
  3. Dans la zone Pied de page de la fenêtre du document, cliquez sur code pour afficher le mode code.
  4. Sélectionnez et supprimez tout le code HTML dans la page Web.
  5. Tapez ou collez le code HTML suivant dans le page.
    <%
      ' 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. Enregistrez la page en tant que logon.inc dans le dossier _private de votre site Web d'ouverture de session.
  7. Dans le menu Fichier , cliquez sur Fermer pour fermer la page Web logon.inc.

Tester le site Web d'ouverture de session

Pour ce faire, procédez comme suit :
  1. Dans l'expression Web, cliquez avec le bouton droit sur default.asp dans le volet Liste des dossiers , puis cliquez sur Aperçu dans le navigateur .

    Le navigateur Web charge l'exemple de page d'accueil et indique que vous n'êtes pas connecté sur.
  2. Cliquez sur le lien de page non sécurisé .

    La page se charge et indique que vous n'êtes pas connecté. Cliquez sur le lien précédent pour par défaut pour revenir à la page par défaut.
  3. Cliquez sur le lien page protégé un mot de passe .

    La page logon.asp charge au lieu de la page protégée.
  4. Dans la zone Nom d'utilisateur , tapez testuser , tapez le mot de passe dans la zone mot de passe et puis cliquez sur Ouverture de session .

    La page protégée s'affiche et indique que vous êtes connecté en tant que testuser . Cliquez sur le lien précédent pour par défaut pour revenir à la page par défaut. La page d'accueil se charge et indique que vous êtes connecté en tant que testuser .
  5. Cliquez sur le lien de page non sécurisé .

    La page se charge et indique que vous êtes connecté en tant que testuser .

Personnaliser le site Web d'ouverture de session

Vous pouvez personnaliser le site Web d'exemple d'ouverture de session de l'une des manières suivantes :
  • Ajoutez les noms d'utilisateurs et mots de passe :
    Vous pouvez ouvrir la base de données dans une expression Web et puis ajoutez les utilisateurs à la table tblUsers .
  • Créer des autres pages Web qui sont protégées par mot de passe :
    Pour créer une autre page Web qui est protégée par mot de passe de votre site Web, vous devez enregistrer le fichier en utilisant une extension de nom de fichier .asp, tels que mypage.asp et puis ajoutez les lignes de deux suivantes tout en haut du mode code :
    <% @language="vbscript" %>
    <!--#include virtual="/logon/_private/logon.inc"-->
    la première ligne spécifie que vous utilisez Microsoft Visual Basic Scripting Edition (VBScript) pour votre langue script. La deuxième ligne comprend le nom d'utilisateur et la fonctionnalité mot de passe de l'ouverture de session inclure de fichier que vous avez créé précédemment.

Références

Pour plus d'informations sur la façon de créer une page Web qui est protégée par mot de passe à l'aide FrontPage 2003, Active Server Pages et une base de données Access, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
825498 Comment faire pour créer une page Web protégée par mot de passe à l'aide de FrontPage 2003, Active Server Pages et une base de données Access

Pour plus d'informations sur la façon de sécuriser les communications HTTP entre le client et le serveur, cliquez sur les numéros ci-dessous pour afficher les articles correspondants dans la Base de connaissances Microsoft :
299525 Comment configurer SSL à l'aide de IIS 5.0 et Certificate Server 2.0
299875 Comment faire pour implémenter SSL dans IIS

Pour plus d'informations sur la façon d'intégrer ASP (Active Server Pages) avec les bases de données, cliquez sur les numéros ci-dessous pour afficher les articles correspondants dans la Base de connaissances Microsoft :
299987 Comment utiliser de base de données et les sessions ASP pour implémenter la sécurité ASP
300382 Comment créer une connexion de base de données à partir d'une page ASP dans IIS
318287 Ce que vous devez utiliser ASP (Active Server Pages) dans FrontPage 2002

Propriétés

Numéro d'article: 928706 - Dernière mise à jour: mardi 17 avril 2007 - Version: 1.1
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Expression Web
Mots-clés : 
kbmt kbexpertiseinter kbhowto KB928706 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 928706
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

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