Inserción de datos en la base de datos, y uso de datos Encriptados, Login

En este video esplico como se insertan datos en una base de datos MS Access.





Se creo un registro en la tabla Usuarios que son los datos del administrador.

En Visual Basic, se tomo una función de la página recursosvisualbasic.com.ar para encripdar datos, esta se uso para encriptar la contraseña de los usuarios.

Esta es la función:

'---------------------------------------------------------------------
' EncryptString
' Modificado por Harvey T.
'---------------------------------------------------------------------
'El parámetro UserKey es la clave.
'El parámetro Text es el texto a encriptar o desencriptar.
'El parámetro Action indica QUE hacer, ..es decir Encriptar o desencriptar. ( El valor ENCRYPT es para encriptar y el valor DECRYPT para desencriptar)
'url: http://www.recursosvisualbasic.com.ar/htm/trucos-codigofuente-visual-basic/269-encriptar-desencriptar.htm


Public Function EncryptString(UserKey As String, Text As String, Action As Single) As String
    Dim UserKeyX As String
    Dim Temp     As Integer
    Dim Times    As Integer
    Dim i        As Integer
    Dim j        As Integer
    Dim n        As Integer
    Dim rtn      As String
     
    '//Get UserKey characters
    n = Len(UserKey)
    ReDim UserKeyASCIIS(1 To n)
    For i = 1 To n
        UserKeyASCIIS(i) = Asc(Mid$(UserKey, i, 1))
    Next
         
    '//Get Text characters
    ReDim TextASCIIS(Len(Text)) As Integer
    For i = 1 To Len(Text)
        TextASCIIS(i) = Asc(Mid$(Text, i, 1))
    Next
     
    '//Encryption/Decryption
    If Action = ENCRYPT Then
       For i = 1 To Len(Text)
           j = IIf(j + 1 >= n, 1, j + 1)
           Temp = TextASCIIS(i) + UserKeyASCIIS(j)
           If Temp > 255 Then
              Temp = Temp - 255
           End If
           rtn = rtn + Chr$(Temp)
       Next
    ElseIf Action = DECRYPT Then
       For i = 1 To Len(Text)
           j = IIf(j + 1 >= n, 1, j + 1)
           Temp = TextASCIIS(i) - UserKeyASCIIS(j)
           If Temp < 0 Then
              Temp = Temp + 255
           End If
           rtn = rtn + Chr$(Temp)
       Next
    End If
     
    '//Return
    EncryptString = rtn
End Function


Luego en el modulo de mod_consultas se creo una función de validar Usuarios

Function Validar_Usuario(usuario As String, password As String) As Boolean
    Dim RecorsetTemp  As New ADODB.Recordset
    Dim Sql As String
    Dim Clave As String

    Clave = EncryptString("4mkiujn4", password, 1)
   
    Sql = "Select * from tblUsuarios where usuario = '" & usuario & "' and password = '" & Clave & "'"
    RecorsetTemp.Open Sql, ConexionADO
   
    If RecorsetTemp.RecordCount > 0 Then
       Glo_NombreUsuario = RecorsetTemp("nombres_apellidos")
       Glo_IdUsuario = RecorsetTemp("IdUsuario")
       Glo_IdentifUsuario = RecorsetTemp("identificacion")
       Validar_Usuario = True
    Else
       Validar_Usuario = False
    End If
   
End Function

En el formulario de frmLogin en el evento clic del boton ingresar se coloco el siguiente código:


Private Sub cmdIngresar_Click()
    If Validar_Usuario(txtUsuario.Text, txtPassword.Text) = True Then
       frmPrincipal.Show
       Unload Me
    Else
       MsgBox "Usuario no válido", vbCritical, "Erro de Usuario"
    End If
End Sub

Se creo el formulario MDI frmPrincipal que sera la ventana principal de la aplicación.

 

Comentarios

Entradas más populares de este blog

Creación de la Base de Datos y Conectado con ADO y Formulario Login

Uso del Control Timer en el Formulario de Inicio