Como criar uma página da Web protegida por senha usando o FrontPage 2003, o Active Server Pages e um banco de dados do Access

Traduções deste artigo Traduções deste artigo
ID do artigo: 825498 - Exibir os produtos aos quais esse artigo se aplica.
Para obter uma versão deste artigo para o Microsoft FrontPage 2002, consulte 321439.
Para obter uma versão deste 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 página da Web protegido por senha usando o FrontPage 2003, Active Server Pages (ASP) e um banco de dados do Microsoft Access.

importante
  • O código de exemplo neste artigo não foi feito para substituir os recursos de segurança incorporados do FrontPage 2003. Os exemplos foram criados para oferecer um mecanismo de segurança simples apenas para os usuários que estão navegando no site. Dessa forma, a segurança do FrontPage 2003 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 ajudar a aumentar a 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, contate o administrador de site ou provedor de serviços.

Usar os recursos ASP no Front Page 2003

Antes de poder usar os recursos de ASP no Front Page 2003, é necessário ter acesso a um servidor Web ou uma Web com base em disco compatível com o ASP.

Criar um novo site no FrontPage 2003

Observação As informações de exemplo presumem que o logon do site seja nomeado e seja criado como uma subweb fora da raiz do site. Se for usado um nome diferente de logon, ou criar o site da Web em um local alternativo, será necessário alterar as etapas durante este artigo de acordo com suas necessidades.

Para criar um novo site da Web em FrontPage 2003, execute estas etapas:
  1. Inicie o FrontPage 2003.
  2. No menu Arquivo, clique em Novo.
  3. No painel de controle, clique em Modelos adicionais de Site da Web, e então clique em Site da Web Vazio.
  4. Em Opções, digite o local onde você quer armazenar o novo Site da Web no seguinte formato:
    http://nome_do_servidor/logon/
    Onde nome_do_servidor é o nome do servidor Web com o recurso ASP habilitado.
  5. Clique em OK.
O novo site vazio, o logon nomeado, é aberto no FrontPage 2003.

Criar um banco de dados

Crie um banco de dados para armazenar nomes de usuários e senhas usando um programa de banco de dados como o Microsoft Office Access 2003.

Observação Se for usado um programa para criar um banco de dados que não seja o Access 2003, modifique as etapas de acordo.

Para criar um banco de dados, execute estas etapas:
  1. Inicie o Access 2003.
  2. No menu Arquivo, clique em Novo.
  3. No painel de tarefas, clique em Banco de dados em branco.
  4. Digite logon.mdbpara o nome do arquivo, e clique em Criar.
  5. No painel Objetos clique em Tabelas, e em seguida em Novo.
  6. Clique em Modo Estrutura e em OK.
  7. Na primeira linha da coluna Nome do Campo digite UID.
  8. Na coluna correspondente Tipo de Dados clique em Texto, e então clique no botão Chave Primária na barra de tarefas (o símbolo é uma chave)
  9. Na segunda linha da coluna Nome do Campo digite PWD, e clique em Texto na segunda linha da coluna Tipo de Dados.
  10. No menu Arquivo, clique em Salvar.
  11. Na caixa Nome da Tabela, digite tblUsers e clique em OK.
  12. No menu Exibir, clique em Modo folha de dados.
  13. Na coluna UID, digite testuser.

    Na coluna PWD, digite senha.
  14. No menu Arquivo, clique em Fechar para sair do Access 2003.
Observação Por motivos de segurança, senhas são restritas a uma mistura de letras em maiúsculas, letras em minúsculas e números.

Importar o banco de dados

Importe o banco de dados do nome do usuário e a senha criada no FrontPage 2003. Para fazer isso, siga estas etapas:
  1. No FrontPage 2003, com seu site da Web logon aberto, clique em Importar no menu Arquivo.
  2. Clique em Adicionar Arquivo, localize e então clique no arquivo logon.mdb que foi criado por você.

    Clique em Abrir.
  3. Clique em Modificar, digite _private/logon.mdb na caixa Localização do Arquivo na sua Web e então clique em OK.

    Observação Existe um caractere de sublinhado (_) na frente de "private", no caminho do arquivo.
  4. Clique em OK para importar o arquivo de banco de dados.
  5. Se for solicitada a criação de uma conexão de banco de dados para esse arquivo importado, clique em Não.

Criar as páginas ASP

É necessário criar vários arquivos para trabalhar com este exemplo. Primeiro crie uma home page para seu site da Web, uma página "não segura" e uma página protegida por senha para testes, e em seguida a página da Web logon e o arquivo incluído logon.

Criar a home page

Esta página serve como página modelo para o site e inclui links para a página não segura e a página protegida por senha, criadas por você. Para criar uma home page, execute estas etapas:
  1. No FrontPage 2003, clique em Arquivo, em Novo e clique em Página em branco.
  2. No rodapé da janela do documento, clique em Código Para mostrar a exibição do código.
  3. Selecione e então remova todo o código HTML da página da Web.
  4. Digite ou cole o código HTML seguinte na página da Web.
    <% @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>
    
  5. Clique com o botão direito na guia nova_página_1.htm e então clique em Salvar.

    Salve a página como default.asp na pasta raiz do site.
  6. No menu Arquivo clique em Fechar para fechar a página da Web default.asp.

Criar a página não segura

Crie uma página ASP comum que todos podem exibir. Para criar uma página não segura, execute estas etapas:
  1. No FrontPage 2003, clique em Arquivo, em Novo e clique em Página em branco.
  2. No rodapé da janela do documento, clique em Código Para mostrar a exibição do código.
  3. Selecione e então remova todo o código HTML da página da Web.
  4. Digite ou cole o código HTML seguinte na página da Web.
    <% @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>
    
  5. Clique com o botão direito na guia nova_página_1.htm e então clique em Salvar.

    Salve a página como nonsecure.asp na pasta raiz do site de logon.
  6. No menu Arquivo clique em Fechar para fechar a página não segura da Web, não_segura.asp.

Criar a página protegida por senha

A página desta etapa é igual à página da Web não segura criada anteriormente, com exceção da linha de código seguinte, que deve ser adicionada próximo ao topo da página:
<!--#include virtual="/logon/_private/logon.inc"-->
Ao adicionar esta linha do código a uma página da Web em ASP, essa página se torna protegida por senha pelo arquivo logon.inc criado por você. Para criar uma página protegida por senha, execute estas etapas:
  1. No FrontPage 2003, clique em Arquivo, em Novo e clique em Página em branco.
  2. No rodapé da janela do documento, clique em Código Para mostrar a exibição do código.
  3. Selecione e então remova todo o código HTML da página da Web.
  4. Digite ou cole o código HTML seguinte na página da Web.
    <% @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>
    
  5. Clique com o botão direito na guia nova_página_1.htm e então clique em Salvar.

    Salve a página como passwordprotect.asp na pasta raiz do site de logon.
  6. No menu Arquivo clique em Fechar para fechar a página da Web protegida_por_senha.asp.

Criar a página de logon

Crie uma página de logon semelhante à típica caixa de diálogo de logon do Windows. Os usuários que tentam acessar a página protegida por senha são enviados a essa página para digitar o seu nome e a sua senha. Para criar uma página de logon, execute estas etapas:
  1. No FrontPage 2003, clique em Arquivo, em Novo e clique em Página em branco.
  2. No rodapé da janela do documento, clique em Código Para mostrar a exibição do código.
  3. Selecione e então remova todo o código HTML da página da Web.
  4. Digite ou cole o código HTML seguinte na página da Web.
    <% @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>
    
  5. Clique com o botão direito na guia nova_página_1.htm e então clique em Salvar.

    Salve a página como logon.asp na pasta raiz do site de logon.
  6. No menu Arquivo clique em Fechar para fechar a página da Web logon.asp.

Criar o arquivo de inclusão de logon

O arquivo de inclusão fornece as funcionalidades nome e senha de usuário, além de ser usado tanto pela página da Web segura quanto pela página da Web de logon. Para criar este arquivo de inclusão de logon, execute as seguintes etapas:
  1. No FrontPage 2003, clique em Arquivo, em Novo e clique em Página em branco.
  2. No rodapé da janela do documento, clique em Código Para mostrar a exibição do código.
  3. Selecione e então remova todo o código HTML da página da Web.
  4. Digite ou cole o código HTML seguinte na página da Web.
    <%
      ' 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
    %>
  5. Clique com o botão direito na guia nova_página_1.htm e então clique em Salvar.

    Salve a página como logon.inc na pasta _private do site de logon.
  6. No menu Arquivo, clique em Fechar para fechar o arquivo logon.inc.

Testar o site de logon

Para fazer isso, execute as seguintes etapas:
  1. No FrontPage 2003, no painel Lista de Pastas, clique com o botão direito em Default.asp, e então clique em Visualizar no Navegador.

    Seu navegador carrega a home page de exemplo e mostra que você não está conectado.
  2. Clique no link Página não segura.

    A página é carregada e mostra que você não está conectado. Clique no link Voltar para o padrão para retornar à página padrão.
  3. Clique no link Página protegida por senha.

    A página logon.asp é carregada ao invés da página protegida por senha.
  4. Na caixa Nome de Usuário, digite testuser, digite senha na caixa Senha, e então clique em LOGON.

    A página protegida por senha aparece e mostra que você está conectado como testuser. Clique no link Voltar para o padrão para retornar à página padrão. A home page é carregada e mostra que você está conectado como testuser.
  5. Clique no link Página não segura.

    A página é carregada, e mostra que você está conectado como testuser.

Personalizar o site de logon

É possível personalizar o site de exemplo de logon das seguintes maneiras:
  • Adicionar nomes e senhas de usuário: É possível abrir o banco de dados. Para fazer isso, clique duas vezes no banco de dados no FrontPage 2003, e em seguida adicione usuários à tabela tblUsers.
  • Proteja com senha outras páginas da Web: Para proteger com senha outra página da Web no seu site da Web, é necessário salvar o arquivo com um extensão ASP, por exemplo, Minha_página.asp, e em seguida adicione as duas linhas seguintes no topo do arquivo:
    <% @language="vbscript" %>
    <!--#include virtual="/logon/_private/logon.inc"-->
    
    A primeira linha especifica 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 e senha de usuário do arquivo de inclusão de logon que você criou anteriormente.

Mais Informações

Nomes de usuário e senhas armazenados no banco de dados não criptografado. Mesmo se você usar a máscara de entrada de senha, estes dados não serão criptografados. Por esta e outras razões, os bancos de dados do Access não devem ser usados na produção de sites. Para obter mais informações sobre como ajudar a segurar as comunicações HTTP entre o cliente e o servidor, clique nos números abaixo para ler os artigos na Base de Dados de Conhecimento Microsoft (a página pode estar em inglês):
299525 Como configurar o SSL usando o IIS 5.0 e o Certificate Server 2.0
299875 Como implementar o SSL no IIS

Referências

Para obter mais informações sobre como integrar o ASP nos bancos de dados, clique nos números abaixo para ler os artigos na Base de Dados de Conhecimento Microsoft (alguns artigos podem estar em inglês):
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 por uma página ASP no IIS
318287 O que você precisa para usar as páginas ASP (Active Server Pages) no FrontPage 2002

Propriedades

ID do artigo: 825498 - Última revisão: quinta-feira, 22 de março de 2007 - Revisão: 5.1
A informação contida neste artigo aplica-se a:
  • Microsoft Office SharePoint Designer 2007
  • Microsoft Office FrontPage 2003
Palavras-chave: 
kbdatabase kbasp kbhowtomaster KB825498

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