ACC97: Como utilizar arquivos ASP para consultar um banco de dados do Microsoft Access com segurança avançada

Traduções deste artigo Traduções deste artigo
ID do artigo: 163159 - Exibir os produtos aos quais esse artigo se aplica.
Avançadas: Requer especialista de codificação, interoperabilidade e habilidades de multiusuário.

Expandir tudo | Recolher tudo

Neste artigo

Sumário

Aviso: Embora este artigo descreve o Microsoft Access recursos de segurança, qualquer informação enviada pela Internet com as técnicas descritas neste artigo é enviada sem criptografia. Para enviar informações criptografadas pela Internet, você deve usar um protocolo que envia os certificados de cliente, como SSL (Secure Sockets Layer). Observe que certificados de cliente não podem ser usados no Personal Web Server para Windows 95. QUALQUER USO QUE VOCÊ OS MÉTODOS FORNECIDOS NESTE ARTIGO É DE SUA RESPONSABILIDADE. A Microsoft fornece esse exemplo "como estão" sem garantia de qualquer tipo, expressa ou implícita, inclusive mas não limitada às garantias implícitas de comercialização e/ou adequação a uma finalidade específica.

Este artigo descreve uma técnica que você pode usar para criar arquivos de Active Server Pages (ASP) que permitem que você digitar um nome de usuário e uma senha em um formulário HTML para consultar um banco de dados seguro do Microsoft Access. Este artigo descreve como usar a técnica ao exportar uma consulta e ao exportar um formulário.

Mais Informações

Há três etapas principais usar arquivos ASP para consultar um banco de dados protegido do Microsoft Access:
  • Use o administrador ODBC para criar um DSN do sistema que aponta para o arquivo de informações de grupo de trabalho (System.mdw) usar com seu banco de dados protegido.
  • Crie um formulário HTML que solicita um nome de usuário e senha. O formulário HTML passa os valores para parâmetros no seu arquivo ASP.
  • Modificar o script no arquivo ASP para usar o formulário HTML para solicitar os parâmetros de nome de usuário e senha para autenticar o acesso do usuário ao seu banco de dados.
Você deve usar um formulário HTML para inserir o nome de usuário e senha e, em seguida, passar essas informações para os arquivos ASP. Não é possível configurar autenticação básica do Microsoft Internet Information Server (IIS) ou NT Challenge/Response para obter essa funcionalidade, porque as opções de IIS autenticar os usuários contra permissões Windows NT ou Windows 2000, não contas de segurança Microsoft Access. É possível usar autenticação básica e desafio/resposta com bancos de dados do Microsoft SQL Server como o SQL Server pode ser integrado com segurança do Windows 2000 ou Windows NT. A segurança não oferece esse recurso.

Observação: O seguinte exemplo assume que você estiver familiarizado com a segurança e exigirá que você criar uma cópia segura do banco de dados Northwind fornecido com o Microsoft Access.

Este exemplo contém as seções a seguir:
  • Criar um DSN de sistema para um acesso seguro do Microsoft banco de dados
  • Criando arquivos ASP e o formulário de logon de HTML
  • Personalizando a arquivos ASP e o formulário de logon de HTML
  • Teste a consulta

Criando um sistema DSN para um banco de dados seguro do Microsoft Access


  1. Em seu servidor Web, abra o painel de controle.
  2. Abra o administrador ODBC. Se você estiver usando Windows 2000, no painel de controle, abra Ferramentas administrativas e, em seguida, fontes de dados (ODBC).
  3. Na caixa de diálogo Administrador de fonte de dados ODBC, clique na guia DSN de sistema.
  4. Clique no botão Adicionar.
  5. Selecione driver do Microsoft Access e, em seguida, clique em Concluir.

    Observação: Se o Microsoft Access Driver não for exibido, ele não está instalado em seu servidor Web. Para obter informações sobre como instalar o driver em seu servidor Web, procure no índice da Ajuda por "Driver de desktop do Microsoft Access" ou pergunte ao Assistente do Office do Microsoft Access 97.
  6. Na caixa de diálogo Configurar ODBC para Microsoft Access 97, digite NorthwindASP na caixa nome de fonte de dados.
  7. Clique no botão Selecionar e procure e selecione Northwind2.mdb. Clique em OK.
  8. Na caixa System Database, clique em banco de dados e, em seguida, clique no botão banco de dados do sistema. Procure e selecione Northwind2.mdw e, em seguida, clique em OK.
  9. Observe que você tem a opção de clique no botão Avançado na caixa de diálogo Configurar ODBC para Microsoft Access 97 e definir um nome de logon padrão e uma senha para o DSN do sistema. Qualquer um dos seus arquivos ASP que não fornecem um nome de usuário e senha usará as configurações padrão.

    Observação: Informações de nome de usuário e senha precisam ser fornecido pelo DSN de sistema ou pelo próprio arquivo ASP ao acessar bancos de dados que tenham sido protegidos por alterando as permissões de objetos. Um recurso interessante observar é que, se um banco de dados foi protegido com uma permissões de senha em vez de objeto de banco de dados, as informações de senha fornecida pelo DSN do sistema ou pelo ASP arquivo ainda será usado para obter autorização para o banco de dados, mesmo que a senha tenha nada a ver com uma conta de usuário em um banco de dados do sistema.
  10. Clique em OK para fechar a caixa de diálogo programa de instalação do Microsoft Access 97 ODBC.
  11. Clique em OK para fechar a caixa de diálogo Administrador de fonte de dados ODBC.

Criando arquivos ASP e o formulário de logon de HTML

Nesta seção, você criar uma consulta com parâmetros de nome de usuário e senha e, em seguida, exporta a consulta para o formato ASP. Quando você cria arquivos ASP de uma consulta parâmetro, o Microsoft Access cria automaticamente um formulário HTML para inserir os parâmetros. Isso é uma maneira fácil de criar o formulário HTML que você precisa coletar as informações de nome de usuário e senha. No entanto, não é necessário usar essa técnica para criar o formulário HTML; você pode usar o bloco de notas ou outra ferramenta, como o Microsoft FrontPage 97 de página, para criar seu próprio formulário de logon HTML.

Observação: Informações de nome de usuário e senha precisam ser fornecido pelo DSN de sistema ou pelo próprio arquivo IDC ao acessar bancos de dados que tenham sido protegidos por alterando as permissões de objetos. Um recurso interessante observar é que se um banco de dados foi protegido com uma senha de banco de dados em vez de permissões de objeto, as informações de senha fornecidas pelo DSN do sistema ou pelo arquivo IDC ainda serão usadas para obter autorização para o banco de dados, mesmo que a senha tenha nada a ver com uma conta de usuário em um banco de dados do sistema.
  1. Inicie o Microsoft Access.
  2. Abra Northwind2.mdb.
  3. Crie a seguinte nova consulta chamada GetUserPass baseado na tabela Customers:
            Query: GetUserPass
            ------------------
            Type: Select Query
    
            Field: CustomerID
            Table: Customers
    					
  4. No menu consulta, clique em parâmetros.
  5. Digite o seguinte na caixa de diálogo Parâmetros da consulta e, em seguida, clique em OK.
            Parameter          Data Type
            ----------------------------
            [UserParam]        Text
            [PassParam]        Text
    					
  6. Salve a consulta GetUserPass e feche-lo.
  7. No menu Arquivo, clique em Salvar como HTML. A caixa de diálogo "Publicar para o Assistente da Web para" é aberta. Clique em Avançar.
  8. Clique na guia consultas e selecione a consulta GetUserPass. Clique na guia formulários e selecione o formulário clientes. Clique duas vezes em Avançar.
  9. Você será solicitado a selecionar um tipo de formato para criar. Selecione Dynamic ASP (Microsoft Active Server Pages). Clique em Avançar.
  10. Na caixa Nome da fonte de dados, digite NorthwindASP e clique em Avançar.
  11. Botão Publicar objetos local deve ser selecionado. Observe a pasta onde os arquivos ASP serão exportados. Você não precisa fazer qualquer mais seleções, portanto, você pode clicar concluir neste momento.
  12. Clique em OK em cada uma das duas caixas de diálogo Inserir valor do parâmetro que aparecem.
  13. O ASP cria quatro arquivos de saída: GetUserPass_1.asp, GetUserPass_1.HTML, Customers_1.asp e Customers_1alx.asp.

Personalizando os arquivos ASP e o formulário HTML

Observação: Esta seção contém informações sobre como editar arquivos ASP e HTML e presume que você esteja familiarizado com arquivos HTML, Active Server e Visual Basic Scripting de edição. Profissionais de suporte do produto Microsoft não oferecem suporte a personalização de quaisquer arquivos HTML, HTX, IDC ou ASP.
  1. Use o bloco de notas ou outro editor de texto para abrir o arquivo GetUserPass_1.asp. Na parte superior do arquivo, você verá o seguinte código:
          <HTML>
          <HEAD>
          <META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=windows-
          1252">
          <TITLE>GetUserPass</TITLE>
          </HEAD>
          <BODY>
          <%
          Param = Request.QueryString("Param")
          Data = Request.QueryString("Data")
          %>
          <%
          If IsObject(Session("NorthwindASP_conn")) Then
             Set conn = Session("NorthwindASP_conn")
          Else
             Set conn = Server.CreateObject("ADODB.Connection")
             conn.open "NorthwindASP","",""
             Set Session("NorthwindASP_conn") = conn
          End If
          %>
    
          Replace the above code with the following (the rest of the code
          should remain the same):
    
          <%
          If IsObject(Session("NorthwindASP_conn")) Then
             Set conn = Session("NorthwindASP_conn")
          Else
             If Request.Form("[UserParam]") = "" then
             response.redirect "GetUserPass_1.HTML"
             Else
             Set conn = Server.CreateObject("ADODB.Connection")
             conn.open "NorthwindASP", Request.Form("[UserParam]"), _
                Request.Form("[PassParam]")
             Set Session("NorthwindASP_conn") = conn
             End If
          End If
          %>
          <HTML>
          <HEAD>
          <META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=windows-
           1252">
          <TITLE>GetUserPass</TITLE>
          </HEAD>
          <BODY>
    					
  2. Salve o arquivo GetUserPass_1.asp e fechá-lo.
  3. Use o bloco de notas ou outro editor de texto para abrir o arquivo Customers_1.asp. Na parte superior do arquivo, você verá o código a seguir:
          <HTML>
          <HEAD>
          <META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=windows-
          1252">
          <TITLE>Customers</TITLE>
          </HEAD>
          <BODY>
          <%
          If IsObject(Session("NorthwindASP_conn")) Then
             Set conn = Session("NorthwindASP_conn")
          Else
             Set conn = Server.CreateObject("ADODB.Connection")
             conn.open "NorthwindASP","",""
             Set Session("NorthwindASP_conn") = conn
          End If
          %>
    
          Replace the above code with the following (the rest of the code
          should remain the same):
    
          <%
          If IsObject(Session("NorthwindASP_conn")) Then
             Set conn = Session("NorthwindASP_conn")
          Else
             If Request.Form("[UserParam]") = "" then
               response.redirect "GetUserPass_2.HTML"
             Else
               Set conn = Server.CreateObject("ADODB.Connection")
               conn.open "NorthwindASP", Request.Form("[UserParam]"), _
                 Request.Form("[PassParam]")
               Set Session("NorthwindASP_conn") = conn
             End If
          End If
          %>
          <HTML>
          <HEAD>
          <META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=windows-
           1252">
          <TITLE>Customers</TITLE>
          </HEAD>
          <BODY>
    						
    salvar o arquivo Customers_1.asp e fechá-la. Essas alterações fará com que o arquivo ASP usar o formulário HTML para solicitar um nome de usuário e uma senha se o usuário tivesse não ainda inserido um nome de usuário e uma senha para a sessão.
  4. Use o bloco de notas ou outro editor de texto para abrir o arquivo GetUserPass_1.HTML. Por padrão, o formulário HTML usa o método GET para enviar seus dados. Obter variáveis aparecem na caixa Endereço de navegadores da Web. Portanto, você deve alterar o método GET para o método POST se você não desejar que sua senha para ser visíveis na caixa Endereço do navegador da Web. Localize a seguinte linha no arquivo GetUserPass_1.HTML
    <FORM METHOD="GET" ACTION="GetUserPass_1.asp">
    e altere-o para:
    <FORM METHOD="POST" ACTION="GetUserPass_1.asp">
  5. Caixas de texto use uma configuração de tipo de entrada de texto por padrão. Para impedir sua senha visível na caixa de texto no formulário, você deve alterar o tipo de entrada a senha. Localize a seguinte linha no arquivo GetUserPass_1.HTML
    [PassParam] <INPUT TYPE="Text" NAME="[PassParam]"> <p>
    e altere-o para:
    [PassParam] <INPUT TYPE="Password" NAME="[PassParam]"> <p>
  6. No bloco de notas, no menu Arquivo, clique em Salvar. Você precisará criar outro formulário HTML para não feche o bloco de notas.
  7. No bloco de notas, no menu Arquivo, clique em Salvar como.
  8. Na caixa Nome do arquivo, digite GetUserPass_2.HTML.
  9. Na caixa Salvar como tipo, selecione todos os arquivos e clique em Salvar.
  10. Localize a seguinte linha no arquivo GetUserPass_2.HTML
          <FORM METHOD="POST" ACTION="GetUserPass_1.asp">
    						
    e alterá-lo para:
          <FORM METHOD="POST" ACTION="Customers_1.asp">
    					
  11. No menu Arquivo, clique em Salvar. No menu Arquivo, clique em Sair.
  12. Copie GetUserPass_1.HTML, GetUserPass_2.HTML, GetUserPass_1.asp, Customers_1.asp e Customers_1alx.asp para uma pasta no seu computador servidor Web no qual você tenha permissão de leitura e execução.

    Para obter mais informações sobre como configurar permissões do Microsoft Internet Information Server (IIS), por favor consulte o índice da Ajuda IIS e consulte o seguinte artigo na Base de dados de Conhecimento da Microsoft:

    160754Erro "HTTP/1.0 403 Acesso proibido" navegação IDC página

Teste a consulta


  1. Inicia o Microsoft Internet Explorer 3.0 ou Web de outra programa do navegador.
  2. Digite o URL (Uniform Resource Locator) na caixa Endereço do navegador da Web para exibir GetUserPass_1.asp. Por exemplo, se você salvou os arquivos ASP em uma pasta chamada teste na pasta wwwroot do seu servidor Web, digite:

    http://<servername>/test/GetUserPass_1.asp

    Observe que a URL depende de onde os arquivos estão localizados no servidor Web e Internet Explorer 3.0 com o controle de layout HTML é necessário para exibir formulários exportados para ASP.
  3. O formulário GetUserPass_1.HTML é aberto no navegador da Web com uma caixa [UserParam], uma caixa [PassParam] e um botão Executar consulta. Digite administrador nas duas caixas de e clique no botão Executar consulta. O arquivo GetUserPass_1.asp abre e exibe uma lista de CustomerIDs.
  4. Tipo a URL apropriada para exibir o formulário clientes e Customers.asp será aberto. Você será solicitado não um nome de usuário e uma senha porque a sessão começou quando o primeiro logon. A sessão termina quando o navegador é fechado. Uma sessão também terminará se um usuário não solicitar ou atualizar uma página dentro do período de tempo limite. O padrão de propriedade de tempo limite da sessão é 20 minutos e pode ser alterado nos scripts ASP. Você também pode finalizar a sessão usando o método abandonar do objeto Session em seus scripts. Para obter mais informações sobre usando o método abandonar e definir o tempo limite de propriedade para o objeto de sessão, por favor consulte a documentação on-line do ASP.

    Observação: Se você digitar um nome de usuário incorreto ou senha, você receber a seguinte mensagem de erro:
          Microsoft OLE DB Provider for ODBC Drivers error '80004005'
          Not a valid account name or password.
    					

Referências

Para obter mais informações sobre como criar e modificar ASP arquivos, por favor consulte a documentação on-line do Microsoft ASP.

Para obter mais informações sobre o Microsoft Access segurança, procure o índice da Ajuda para "segurança, visão geral," ou pergunte ao Assistente do Office do Microsoft Access 97.

Propriedades

ID do artigo: 163159 - Última revisão: sexta-feira, 19 de janeiro de 2007 - Revisão: 4.3
A informação contida neste artigo aplica-se a:
  • Microsoft Access 97 Standard Edition
  • Microsoft Internet Information Server 3.0
Palavras-chave: 
kbmt kbhowto kbusage KB163159 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 163159
Aviso de Isenção de Responsabilidade sobre Conteúdo do KB Aposentado
Este artigo trata de produtos para os quais a Microsoft não mais oferece suporte. Por esta razão, este artigo é oferecido "como está" e não será mais atualizado.

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