Foros del Web » Programación para mayores de 30 ;) » .NET »

Autentificar Usuario .NET con SQL

Estas en el tema de Autentificar Usuario .NET con SQL en el foro de .NET en Foros del Web. tengo mi base de datos en SQL y quiero que solo los usuarios usen el programa, para esto tengo una tabla usuarios (id,nombre,contraseña) ya tengo ...
  #1 (permalink)  
Antiguo 16/03/2009, 13:54
Avatar de Bazookao  
Fecha de Ingreso: diciembre-2008
Ubicación: Mexico
Mensajes: 139
Antigüedad: 15 años, 5 meses
Puntos: 1
Pregunta Autentificar Usuario .NET con SQL

tengo mi base de datos en SQL y quiero que solo los usuarios usen el programa, para esto tengo una tabla usuarios (id,nombre,contraseña)
ya tengo un LoginForm para que se carga cuando se ejecuta el programa,
lo que quiero es que el usuario ponga su nombre y contraseña
si es correcto que lo deje entrar al programa si no que no pueda avanzar de ahi hasta que digite correctamente los datos de acceso

lei un post que esta en las FAQ's de VB pero no me deja poner el enlace por que medio nuevo en el foro


pero es para VB6 y yo quiero para .NET y la verdad si cambian varias cosas

podrian ser lo mas detallado posible sobre todo para el proceso de coneccion con la base de datos que esta en SQL 2008 y tengo VS2008

gracias de antemano
  #2 (permalink)  
Antiguo 17/03/2009, 11:22
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 16 años, 3 meses
Puntos: 37
Respuesta: Autentificar Usuario .NET con SQL

Prueba así:

Código vb.net:
Ver original
  1. Imports System.Data.SqlClient
  2.  
  3. Public Class LoginForm1
  4.     Dim cont As Int32 = 0
  5.     ' conexión a una BD SQLExpress
  6.     Dim con As New SqlConnection("Server=.\SQLEXPRESS;Integrated Security=True;Database=BaseSQL")
  7.  
  8.     Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click
  9.         If VerificarUsuario(UsernameTextBox.Text, PasswordTextBox.Text) Then
  10.             ' correcto, salimos a True
  11.             EsOk = True
  12.             Me.Close()
  13.         Else
  14.             ' le damos 4 intentos y si no, salimos a False
  15.             MsgBox("Usuario o contraseña incorrectos" & vbNewLine & "Quedan " & 3 - cont & " intentos")
  16.             cont += 1
  17.         End If
  18.         If cont = 4 Then Me.Close()
  19.     End Sub
  20.  
  21.     Private Sub Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel.Click
  22.         Me.Close()
  23.     End Sub
  24.  
  25.     Private Function VerificarUsuario(ByVal ElUser As String, ByVal ElPass As String) As Boolean
  26.         Dim dr As SqlDataReader
  27.         Dim strSQL As String = "SELECT * FROM Usuarios Where Nombre = '" & ElUser & "' And Pass = '" & ElPass & "'"
  28.         con.Open()
  29.         Dim cmd As New SqlCommand(strSQL, con)
  30.         dr = cmd.ExecuteReader
  31.         dr.Read()
  32.         If dr.HasRows = True Then Return True
  33.         con.Close()
  34.     End Function
  35. End Class

En el Load del form de inicio:

Código vb.net:
Ver original
  1. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  2.         Me.Show() ' si quieres mostrar el Login dentro del Form de inicio
  3.         LoginForm1.ShowDialog()
  4.         If EsOk = False Then End
  5.  
  6. ' ....instrucciones de inicio
  7.  
  8. End Sub


  #3 (permalink)  
Antiguo 12/04/2009, 17:31
Avatar de Bazookao  
Fecha de Ingreso: diciembre-2008
Ubicación: Mexico
Mensajes: 139
Antigüedad: 15 años, 5 meses
Puntos: 1
Respuesta: Autentificar Usuario .NET con SQL

muchas gracias por el codigo

mmm pero si quisiera hacer lo mismo con una DB en acces 2007??
  #4 (permalink)  
Antiguo 13/04/2009, 02:25
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 16 años, 3 meses
Puntos: 37
Respuesta: Autentificar Usuario .NET con SQL

Cita:
Iniciado por Bazookao Ver Mensaje
muchas gracias por el codigo

mmm pero si quisiera hacer lo mismo con una DB en acces 2007??
Es igual, sólo cambia la cadena de conexión:

"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=x:\Ruta\BD2007.accdb;Persist Security Info=False"


  #5 (permalink)  
Antiguo 24/05/2009, 10:34
Avatar de Bazookao  
Fecha de Ingreso: diciembre-2008
Ubicación: Mexico
Mensajes: 139
Antigüedad: 15 años, 5 meses
Puntos: 1
Respuesta: Autentificar Usuario .NET con SQL

mmm mo em a funcionado el uso en acces 2007
pongo la cadena de conexion pero me dice que provider es una palabra clave no permitida
que hago?
  #6 (permalink)  
Antiguo 25/05/2009, 09:05
 
Fecha de Ingreso: octubre-2000
Mensajes: 1.692
Antigüedad: 23 años, 6 meses
Puntos: 19
Respuesta: Autentificar Usuario .NET con SQL

Hola.
Si vas a usar access debes usar OleDb, por lo tanto a todos los tipos datos SQL de tu codigo debes cambiarle el Sql por OleDb:

SqlConnection lo debes cambiar por OleDbConnection

SqlCommand lo cambias por OleDbCommand
y así.

Podes ver si queres ejemplo de acceso a datos con access acá:
http://www.startvbdotnet.com/ado/msaccess.aspx
__________________
PD: Con amor, fe, amor a Dios y amistad podemos hacer un mundo mejor!!!!
  #7 (permalink)  
Antiguo 17/07/2009, 18:52
 
Fecha de Ingreso: abril-2006
Ubicación: Santiago ,Chile
Mensajes: 169
Antigüedad: 18 años, 1 mes
Puntos: 0
Respuesta: Autentificar Usuario .NET con SQL

Cita:
Iniciado por Avellaneda Ver Mensaje
Prueba así:

Código vb.net:
Ver original
  1. Imports System.Data.SqlClient
  2.  
  3. Public Class LoginForm1
  4.     Dim cont As Int32 = 0
  5.     ' conexión a una BD SQLExpress
  6.     Dim con As New SqlConnection("Server=.\SQLEXPRESS;Integrated Security=True;Database=BaseSQL")
  7.  
  8.     Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click
  9.         If VerificarUsuario(UsernameTextBox.Text, PasswordTextBox.Text) Then
  10.             ' correcto, salimos a True
  11.             EsOk = True
  12.             Me.Close()
  13.         Else
  14.             ' le damos 4 intentos y si no, salimos a False
  15.             MsgBox("Usuario o contraseña incorrectos" & vbNewLine & "Quedan " & 3 - cont & " intentos")
  16.             cont += 1
  17.         End If
  18.         If cont = 4 Then Me.Close()
  19.     End Sub
  20.  
  21.     Private Sub Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel.Click
  22.         Me.Close()
  23.     End Sub
  24.  
  25.     Private Function VerificarUsuario(ByVal ElUser As String, ByVal ElPass As String) As Boolean
  26.         Dim dr As SqlDataReader
  27.         Dim strSQL As String = "SELECT * FROM Usuarios Where Nombre = '" & ElUser & "' And Pass = '" & ElPass & "'"
  28.         con.Open()
  29.         Dim cmd As New SqlCommand(strSQL, con)
  30.         dr = cmd.ExecuteReader
  31.         dr.Read()
  32.         If dr.HasRows = True Then Return True
  33.         con.Close()
  34.     End Function
  35. End Class

En el Load del form de inicio:

Código vb.net:
Ver original
  1. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  2.         Me.Show() ' si quieres mostrar el Login dentro del Form de inicio
  3.         LoginForm1.ShowDialog()
  4.         If EsOk = False Then End
  5.  
  6. ' ....instrucciones de inicio
  7.  
  8. End Sub


Hola el primer codigo donde lo coloco.. sera en login.aspx, lo otro como direcciono ala pagina que esta dentro del sistema o sea cuando el user es valido..
necesito orientacion, saludos
  #8 (permalink)  
Antiguo 18/07/2009, 07:29
Avatar de dwaks  
Fecha de Ingreso: agosto-2002
Ubicación: Panamá
Mensajes: 962
Antigüedad: 21 años, 9 meses
Puntos: 15
Respuesta: Autentificar Usuario .NET con SQL

Creo que la meta real de este proceso no es que copies y pegues y funcione, la meta es que entiendas cada paso que te brindan en el código para que después hagas las cosas por tu cuenta.

Te dejo este artículo que habla sobre como trabajar con bases de datos desde .NET:
http://www.dotnetpanama.com/dotnetpa...os-en-NET.aspx

También te dejo este otro que explica porque se debe cerrar una conección a la base de datos siempre:
http://www.dotnetpanama.com/dotnetpa...-de-datos.aspx

Lee los artículos y aprende las cosas como se hacen, tienes el ejemplo que te dejo Avellaneda que es claro. Creeme Avellaneda se sentira mejor sabiendo que aprendiste a viendote siempre preguntando por código.

Saludos,
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 07:05.