Como proteger seus dados confidenciais com um formulário de login no Access

Compartilhe agora:

Um formulário de login é obrigatório para bancos de dados que contêm informações confidenciais. Siga as etapas abaixo para criar seu próprio formulário de login para proteger seu banco de dados de acesso inválido.

Faça o download

Se você deseja começar a usar o recurso o mais rápido possível, você pode:

Baixe o banco de dados de amostra com códigos VBA agora

Caso contrário, se você quiser DIY, pode ler o conteúdo abaixo.

Etapas para criar um formulário de login no Access

1. Crie uma tabela de login

A primeira coisa que precisamos fazer é criar uma tabela que armazenará todas as informações de login.

  1. Crie uma nova tabela e nomeie-a como tbl_login.
  2. Abra a tabela na visualização de design.
  3. Adicione os seguintes campos com seus tipos de dados correspondentes:
Nome do campo Tipo de dados
ID do usuário AutoNumeração
Primeiro nome Pequeno texto
Sobrenome Pequeno texto
UserName Pequeno texto
Senha Pequeno texto

 

  1. Edite a máscara de entrada da senha para que seja exibida como uma série de asteriscos (*).Editar a máscara de entrada da senha
  • Selecione o campo Senha.
  • Vá para a guia Geral > Máscara de entrada > …
  • Quando o Assistente de máscara de entrada aparecer, selecione Senha.
  • Clique em Concluir.
  1. Abra a tabela na exibição Folha de dados e insira o primeiro registro (seus detalhes de login).Digite seus detalhes de login
  2. Feche a tabela e salve as alterações feitas.

2. Crie o formulário de login

Crie um formulário em branco com 2 caixas de texto e 2 botões de comando (conforme mostrado abaixo). Ignore o assistente do botão de comando.Criar o formulário de login

Vamos nos referir a esses controles de formulário em nosso código posteriormente, então seria melhor renomeá-los para que possam ser facilmente identificados:

  • txt_nomedeusuário
  • txt_senha
  • cmd_login
  • cmd_cancel

Em seguida, altere a máscara de entrada da caixa de texto da senha para que também seja exibida como uma série de asteriscos (*).

  1. Na visualização de design, selecione a caixa de texto de senha.
  2. Abra a Folha de Propriedades (ALT + Enter).
  3. Vá para a guia Dados > Máscara de entrada.
  4. Selecione Senha e clique em Concluir.

Agora, vamos alterar algumas propriedades do formulário por motivos estéticos e, principalmente, para garantir que os usuários não possam ignorá-lo sem inserir os dados de login corretos.

  1. Na visualização de design, selecione o formulário (conforme mostrado abaixo).Selecione o formulário
  2. Abra a Folha de Propriedades (ALT + Enter) e atualize as seguintes propriedades:
  • Sob o Formato aba
    • Legenda: Entrar
    • Seletores de registro: Não
    • Botões de navegação: Não
    • Barras de rolagem: nenhuma
    • Estilo de Borda: Diálogo
    • Botão Fechar: Não
  • Sob o Outros aba
    • Pop Up: Sim
    • Modalidade: Sim
    • Menu de Atalho: Não
  1. Salve o formulário como frm_login.

3. Adicione o código

Adicione um evento On Click ao botão Login.

  1. Na visualização de design, selecione o botão Login.
  2. Vá para a Folha de propriedades > Guia Evento > Ao clicar > …
  3. Selecionar Construtor de Código no menu Escolher Construtor e clique em OK.
  4. Isso abrirá o Editor VBA.
  5. Copie o código abaixo.
Private Sub cmd_login_Click()

  Dim db As DAO.Database
  Dim rst As DAO.Recordset
  Dim strSQL As String
 
  If Trim(Me.txt_username.Value & vbNullString) = vbNullString Then
    MsgBox prompt:="Username should not be left blank.", buttons:=vbInformation, title:="Username Required"
    Me.txt_username.SetFocus
    Exit Sub
  End If
 
  If Trim(Me.txt_password.Value & vbNullString) = vbNullString Then
    MsgBox prompt:="Password should not be left blank.", buttons:=vbInformation, title:="Password Required"
    Me.txt_password.SetFocus
    Exit Sub
  End If
 
  'query to check if login details are correct
  strSQL = "SELECT FirstName FROM tbl_login WHERE Username = """ & Me.txt_username.Value & """ AND Password = """ & Me.txt_password.Value & """"
 
  Set db = CurrentDb
  Set rst = db.OpenRecordset(strSQL)
  If rst.EOF Then
    MsgBox prompt:="Incorrect username/password. Try again.", buttons:=vbCritical, title:="Login Error"
    Me.txt_username.SetFocus
  Else
    MsgBox prompt:="Hello, " & rst.Fields(0).Value & ".", buttons:=vbOKOnly, title:="Login Successful"
    DoCmd.Close acForm, "frm_login", acSaveYes
  End If
 
 Set db = Nothing
 Set rst = Nothing

End Sub

Este código irá:

  1. Verifique se os campos de nome de usuário e senha não foram deixados em branco. Se estiverem, um prompt será exibido.
  2. Verifique se os detalhes de login estão corretos comparando-os com os valores na tabela de login (tbl_login).
  3. Depois que os detalhes de login forem verificados, um prompt aparecerá dando as boas-vindas ao usuário.

O próximo passo é adicionar o código do botão Cancelar para que, ao ser clicado, o banco de dados seja fechado.

  1. Adicione um evento On Click ao botão Cancelar (mesmo procedimento do botão Login).
  2. Copie o código abaixo.
Private Sub cmd_cancel_Click()
   DoCmd.Quit acQuitSaveAll
End Sub

4. Defina o formulário de login como o formulário de exibição

Por fim, defina o Formulário de Login como o formulário padrão que os usuários verão ao abrir o banco de dados.

  1. Vá para Arquivo > Opções > Banco de dados atual.
  2. Defina Exibir formulário como frm_login.
  3. Clique em OK.

Você terá que fechar o banco de dados e reabri-lo para ver como funciona.

Recupere seu banco de dados do Access

Parabéns! Agora você sabe como proteger seu precioso banco de dados contra acesso inválido. Agora, vou te dar uma dica extra. Se, por um motivo infeliz, seu banco de dados foi corrompido, NÃO entre em pânico. DataNumen Inc., especialista em tecnologias de recuperação de dados, fornece um software que repara acesso corrompido base de dados. Seu banco de dados ainda pode ser recuperado.

Introdução do autor:

Jayme Stack é um especialista em recuperação de dados em DataNumen, Inc., líder mundial em tecnologias de recuperação de dados, incluindo recuperação sql e produtos de software de recuperação do Excel. Para mais informações visite www.datanumen.com

Compartilhe agora:

Comentários estão fechados.