Foros del Web » Programando para Internet » ASP Clásico »

Autenticación en ASP ¿Se puede? ¿Cómo?

Estas en el tema de Autenticación en ASP ¿Se puede? ¿Cómo? en el foro de ASP Clásico en Foros del Web. Esta duda viene del foro de .NET (el cual no estoy muy familiarizado) Y no sé si deba llevarlo al de PHP, pero conozco mas ...
  #1 (permalink)  
Antiguo 18/11/2004, 21:50
 
Fecha de Ingreso: junio-2003
Mensajes: 19
Antigüedad: 21 años
Puntos: 0
Pregunta Autenticación en ASP ¿Se puede? ¿Cómo?

Esta duda viene del foro de .NET (el cual no estoy muy familiarizado)
Y no sé si deba llevarlo al de PHP, pero conozco mas de ASP

Necesito hacer una pequeña aplicación donde los usuarios coloquen su número de empleado y un password que ellos mismos puedan crear para que puedan revisar un archivo mensual.

Gracias.
  #2 (permalink)  
Antiguo 18/11/2004, 22:33
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Bueno, pues en las 3 tecnologías se puede hacer...

¿Qué necesitas?

1.- Una conexión a base de datos(previo diseño de esta)
2.- Un formulario con 1 campo usuario, otro de password
3.- Abrir un recordset donde el campo en tu DB usuario sea = al request.form("campo_usuario")
y el pass = request.form("campo_password")
4.- Puedes manejar sesiones(variables de sesión) si está autentificado
5.- desplegar el archivo que corresponde desde el browser.

Ahora a investigar se ha dicho que en este foro está totalmente documentado todo lo anterior, y cuando te atores regresa y con gusto te ayudamos...

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #3 (permalink)  
Antiguo 18/11/2004, 22:42
 
Fecha de Ingreso: junio-2003
Mensajes: 19
Antigüedad: 21 años
Puntos: 0
De acuerdo

Cita:
Iniciado por u_goldman
Bueno, pues en las 3 tecnologías se puede hacer...

¿Qué necesitas?

1.- Una conexión a base de datos(previo diseño de esta)
2.- Un formulario con 1 campo usuario, otro de password
3.- Abrir un recordset donde el campo en tu DB usuario sea = al request.form("campo_usuario")
y el pass = request.form("campo_password")
4.- Puedes manejar sesiones(variables de sesión) si está autentificado
5.- desplegar el archivo que corresponde desde el browser.

Ahora a investigar se ha dicho que en este foro está totalmente documentado todo lo anterior, y cuando te atores regresa y con gusto te ayudamos...

Salu2,

Muchas Gracias u_goldman

Lo único que no me quedó claro fue el punto 4
  #4 (permalink)  
Antiguo 19/11/2004, 04:51
 
Fecha de Ingreso: noviembre-2004
Mensajes: 117
Antigüedad: 19 años, 7 meses
Puntos: 0
En el momento que haces la verificación del mail y password, guardas en variables de Session cuantos datos quieras, por ejemplo....

Código:
<%
Dim Usuario, str
'Hacemos el Login mas seguro
str = LCASE(trim(Request.Form("Usuario")))
str = replace(str,"=","")
str = replace(str,"'","")
str = replace(str,"""""","")
str = replace(str," or ","")
str = replace(str," and ","")
str = replace(str,"(","")
str = replace(str,")","")
str = replace(str,"<","[")
str=replace(str,"--","")
str=replace(str,"select","")
str=replace(str,"insert","")
str=replace(str,"update","")
str=replace(str,"delete","")
str=replace(str,"drop","")
str=replace(str,"-shutdown","")
str=replace(str,"--","")
Usuario = replace(str,">","]")

'Comprobamos el usuario y si está en blanco no se loguea
If Usuario<>""  Then
	Dim RSLogin
	Set RSLogin = Server.CreateObject("ADODB.Recordset")
	Query1 = "SELECT * FROM Clientes WHERE Mail = '" & Usuario & "';"
	Response.Write Query1
	RSLogin.Open Query1, oConn, 3, 1
             'Ahora le toca al password
	If Request.Form("Password")<>"" Then
		IF NOT RSLogin.EOF Then
			'Si el password no es correcto no se loguea
                                       If Request.Form("Password")=RSLogin("Password") Then
				Session("Logueado")="SI"
				Session("USUARIO_ID")=RSLogin("ID")
				Session("Nombre")=RSLogin("Nombre")
				Session("Nivel")=RSLogin("Nivel")
                                                   'Asi con todas las variables que quieras guardar en la sesion
		             Else
				Session("Logueado")="NO"
	                          End If
                         End If
             Else
	            Session("Logueado")="NO"
             End If
End If
RSLogin.Close
oConn.Close
Luego añadiriamos este pequeño codigo al principio de cada pagina que quisieramos proteger:

Código:
<%	If Session("Logueado")="NO" Then
		Response.Redirect "login.asp"
	End if
%>
Lo he simplificado un poco para que este mas claro, espero que te sirva.

Saludos.
__________________
Saludos a todos ;)

Fiat en Malaga
.. y ahora con CSS!

Última edición por Nono Martínez; 19/11/2004 a las 05:34
  #5 (permalink)  
Antiguo 19/11/2004, 09:01
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 21 años, 7 meses
Puntos: 4
Una preguntita Sh0oter, ¿el archivo mensual es el PDF de cada usuario?
¿no te funcionó la solución que te di en el foro .Net?

Puede que restringir el acceso a un archivo conociendo la ruta desde ASP sea bastante más difícil que con .Net.

Si no tienen nada que ver

Un saludo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
  #6 (permalink)  
Antiguo 19/11/2004, 12:52
 
Fecha de Ingreso: junio-2003
Mensajes: 19
Antigüedad: 21 años
Puntos: 0
Cita:
Iniciado por Bravenap
Una preguntita Sh0oter, ¿el archivo mensual es el PDF de cada usuario?
¿no te funcionó la solución que te di en el foro .Net?

Puede que restringir el acceso a un archivo conociendo la ruta desde ASP sea bastante más difícil que con .Net.

Si no tienen nada que ver

Un saludo.

Bravenap correcto el archivo mensual es el PDF (este archivo contiene información del usuario personal)

Lo que pasa como dije en el primer mensaje es que no conozco mucho o nada de .NET

pero ahora me pones a pensar lo de la ruta desde ASP :S


Necesito ayuda Urgente !! y este es el foro donde mas me han contestado.

Gracias.
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




La zona horaria es GMT -6. Ahora son las 00:43.