Como usar um banco de dados para nomes e senhas de usuário no FrontPage 2002

Traduções deste artigo Traduções deste artigo
ID do artigo: 321439 - Exibir os produtos aos quais esse artigo se aplica.
Para obter uma versão desse artigo para o Microsoft FrontPage 2000, consulte 321503.
Expandir tudo | Recolher tudo

Neste artigo

Sumário

Este artigo passo a passo explica como criar uma simples solução de segurança de arquivo usando o Microsoft FrontPage 2002, ASP (Active Server Pages) e um banco de dados do Microsoft Access.

Observações importantes

  • O código de exemplo neste artigo não foi feito para substituir os recursos de segurança incorporados do FrontPage. Os exemplos foram criados para oferecer um mecanismo de segurança simples apenas para os usuários que estão acessando o seu site da Web. Dessa forma, a segurança do FrontPage 2002 não se integra aos nomes e senhas de usuário acrescentados ao banco de dados do Microsoft Access.
  • Os nomes e as senhas de usuário digitados são transmitidos pela Internet em texto sem formatação. Para obter um nível maior de segurança, a Microsoft recomenda que você use um servidor da Web compatível com a criptografia SSL (Secure Sockets Layer). Para obter mais informações, entre em contato com o seu administrador de site da Web ou provedor de serviços de Internet (ISP).

Etapa 1 - Preparar-se para usar os recursos ASP no Front Page 2002

Antes de usar os recursos ASP no FrontPage 2002, é necessário instalar os componentes listados no seguinte artigo da Base de Dados de Conhecimento da Microsoft:
318287 O que você precisa para usar as páginas ASP (Active Server Pages) no FrontPage 2002

Etapa 2 - Criar uma nova Web no FrontPage 2002

Observação Para que esse exemplo de código funcione corretamente, é necessário certificar-se de que o nome da Web é LOGON e que é uma subweb da raiz de seu site.
  1. No menu Arquivo, clique em Novo, e em seguida clique em Página ou Web.
  2. No painel de tarefas, clique em Modelos de Site Web.
  3. Na lista de modelos, clique em Web vazia.
  4. Especifique o local da Web em seu servidor usando a seguinte sintaxe
    http://seu servidor/logon/
    no qual seu servidor é o nome do seu servidor da Web com o recurso ASP ativado.
  5. Clique em OK.

Etapa 3 - Criar um banco de dados usando o Microsoft Access

  1. Inicie o Microsoft Access.
  2. No menu Arquivo, clique em Novo.
  3. Na lista de opções, clique em Banco de dados em branco.
  4. Nomeie o arquivo logon.mdb e salve-o em sua área de trabalho.
  5. Na seção Tabelas seção, clique em Novo.
  6. Na lista, clique em Modo de Design, e em seguida clique em OK.
  7. Crie dois campos:
    1. Para Nome do campo, digite UID. Para Tipo de Dados, clique em Texto, e em Chave Primária.
    2. Para Nome de Campo, digite PWD. Para Tipo de Dados, clique em Texto.
  8. No menu Arquivo, clique em Salvar. Nomeie a tabela tblUsers, e em seguida clique em OK.
  9. No menu Exibir, clique em Modo folha de dados.
  10. Na coluna UID, digite testuser. Na coluna PWD, digite senha.
  11. No menu Arquivo, clique em Fechar para fechar a tabela.
  12. Feche o Microsoft Access.
Observações Por razões de segurança, as senhas são restritas a uma mistura de letras maiúsculas, minúsculas e números.

Etapa 4 - Importar o banco de dados do Microsoft Access

  1. No menu Arquivo, clique em Importar.
  2. Clique em Adicionar Arquivo.
  3. Na lista Examinar, clique em sua área de trabalho.
  4. Clique no arquivo logon.mdb que você criou no Etapa 3, e clique em Abrir.
  5. Clique em Modificar.
  6. Altere o URL para _private/logon.mdb, e clique em OK.
  7. Clique em OK para importar o arquivo.
  8. Se solicitado a adicionar uma conexão de banco de dados, clique em Não .

Etapa 5 - Criar as páginas ASP

É necessário criar diversos arquivos para trabalhar com este exemplo. Primeiro, você cria uma home page para seu site Web, uma página insegura e uma página segura para testar, e em seguida a página Web de logon e o arquivo de inclusão de logon.

Etapa 5a - Crie a Home Page

Esta página serve como página padrão para seu site e inclui links para a página insegura e página segura que você criará posteriormente.
  1. Na barra de ferramentas do FrontPage, clique em Nova Página.
  2. Alterne para o modo de exibição em HTML, e exclua todo o código HTML já existente.
  3. Digite ou cole o seguinte código na página:
    <% @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="secure.asp">Secure Page</a></li>
    <li><a href="unsecure.asp">Unsecure Page</a></li>
    </ul>
    </body>
    </html>
    					
  4. Salve a página como default.asp na pasta raiz de sua Web.
  5. Feche a página clicando em Fechar no menu Arquivo.

Etapa 5b - Criar uma página não-segura

Essa é uma página ASP básica que pode ser acessada por qualquer pessoa.
  1. Na barra de ferramentas do FrontPage, clique em Nova Página.
  2. Alterne para o modo de exibição em HTML, e exclua todo o código HTML já existente.
  3. Digite ou cole o seguinte código na página:
    <% @language="vbscript" %>
    <html>
    <head><title>Unsecure Page</title></head>
    <body>
    <h3>Unsecure 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>
    					
  4. Salve a página como default.asp na pasta raiz de sua Web.
  5. Feche a página clicando em Fechar no menu Arquivo.

Etapa 5c - Criar uma página segura

A página nesta etapa é a mesma página não-segura criada na Etapa 5b, exceto pela adição da seguinte linha de código próxima à parte superior da página:
 <!--#include virtual="/logon/_private/logon.inc"--> 				
Adicionar essa linha de código a uma página ASP da Web a torna uma página da Web "segura".
  1. Na barra de ferramentas do FrontPage, clique em Nova Página.
  2. Alterne para o modo de exibição em HTML, e exclua todo o código HTML já existente.
  3. Digite ou cole o seguinte código na página:
    <% @language="vbscript" %>
    <!--#include virtual="/logon/_private/logon.inc"-->
    <html>
    <head><title>Secure Page</title></head>
    <body>
    <h3>Secure 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>
    					
  4. Salve a página como secure.asp na pasta raiz de sua Web de logon.
  5. Feche a página clicando em Fechar no menu Arquivo.

Etapa 5d - Criar a página de logon

A página de logon é desenvolvida para lembrar uma caixa de diálogo de logon do Windows padrão. Os usuários que tentam acessar a página segura são enviados a essa página para digitar o seu nome e a sua senha.
  1. Na barra de ferramentas do FrontPage, clique em Nova Página.
  2. Alterne para o modo de exibição em HTML, e exclua todo o código HTML já existente.
  3. Digite ou cole o seguinte código na página:
    <% @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>
    					
  4. Salve a página como logon.asp na pasta raiz de sua Web de logon.
  5. Feche a página clicando em Fechar no menu Arquivo.

Etapa 5e - Criar o arquivo de inclusão de logon

Esse arquivo de inclusão fornece os recursos de nome e senha de usuário, além de ser usado tanto pela página segura quanto pela página de logon.
  1. Na barra de ferramentas do FrontPage, clique em Nova Página.
  2. Alterne para o modo de exibição em HTML, e exclua todo o código HTML já existente.
  3. Digite ou cole o seguinte código na página:
    <%
      ' 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
    %>
  4. Salve a página como logon.inc na pasta _private de sua Web de logon.
  5. Feche a página clicando em Fechar no menu Arquivo.

Etapa 6 - Testar a Web de logon

  1. Na Lista de pastas do FrontPage, clique em default.asp. Na barra de ferramentas do FrontPage, clique em Visualizar no Navegador.
  2. Seu navegador agora carrega a home page de exemplo e mostra que você não está conectado.
  3. Clique no link para a página não-segura. A página é carregada, e mostra que você não está conectado. Clique no link para voltar à página padrão.
  4. Clique no link para a página segura. A página de logon carrega no lugar da página segura.
  5. Digite testuser para o nome do usuário, digite senha para a senha, e em seguida clique em LOGON.
  6. A página segura aparece e mostra que você está conectado como testuser. Clique no link para voltar à página padrão.
  7. A home page de exemplo carrega e mostra que você está conectado como testuser.
  8. Clique no link para a página não-segura. A página é carregada, e mostra que você está conectado como testuser.

Personalizar o exemplo de logon

É possível personalizar o exemplo de logon das seguintes maneiras:
  • Adicionar nomes e senhas de usuário: Você pode abrir o banco de dados clicando duas vezes no FrontPage e em seguida adicionando usuários à tabela tblUsers.
  • Proteger outras páginas da Web: Para proteger uma outra página de sua Web, você deve salvar o arquivo com uma extensão de nome de arquivo ASP, por exemplo, minhapágina.asp e, em seguida, adicionar estas duas linhas na parte superior do arquivo:
     <% @language="vbscript" %> <!--#include virtual="/logon/_private/logon.inc"--> 						
    A primeira linha específica que você está usando o Microsoft Visual Basic Scripting Edition (VBScript) como sua linguagem de script, e a segunda linha inclui os recursos de nome de usuário e senha do arquivo de inclusão de logon criado anteriormente.

Referências

Para obter informações adicionais sobre como integrar as páginas ASP (Active Server Pages) aos bancos de dados e à segurança, clique nos números abaixo para ler os artigos na Base de Dados de Conhecimento da Microsoft:
299987 Como usar o banco de dados e as sessões ASP para implementar a segurança ASP
300382 Como criar uma conexão de banco de dados a partir de uma página ASP no IIS

Propriedades

ID do artigo: 321439 - Última revisão: segunda-feira, 18 de dezembro de 2006 - Revisão: 5.1
A informação contida neste artigo aplica-se a:
  • Microsoft FrontPage 2002 Standard Edition
Palavras-chave: 
kbdatabase kbasp kbprogramming kbhowtomaster KB321439

Submeter comentários

 

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