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

Seguridad con el String SQL

Estas en el tema de Seguridad con el String SQL en el foro de ASP Clásico en Foros del Web. también una de las cosas peligrosas es que el -- es para poner comentarios en la instrucción del SQL.. osea que si yo sé el ...

  #61 (permalink)  
Antiguo 23/07/2005, 13:38
Avatar de mamon  
Fecha de Ingreso: enero-2002
Ubicación: Lima
Mensajes: 1.302
Antigüedad: 23 años, 4 meses
Puntos: 3
también una de las cosas peligrosas es que el -- es para poner comentarios en la instrucción del SQL.. osea que si yo sé el un usuario puedo entrar sin su clave:

xusuario = "mamon' --"
xpass = ""

strSQL = "select * from usuarios where usuario = '"&xusuario&"' and clave = '"&xpass&"'"

quedaría asi:
select * from usuarios where usuario = 'mamon' -- and clave = ''

y lo unico que la base de datos leería sería:
select * from usuarios where usuario = 'mamon'

y entraste como administrador o como el usuario que conozcas sin saber su clave
__________________
Yo si sé lo que es trabajar duro, porque lo he visto.
  #62 (permalink)  
Antiguo 23/07/2005, 16:10
Avatar de El_Metallick  
Fecha de Ingreso: noviembre-2002
Ubicación: Santiago, Chile
Mensajes: 1.718
Antigüedad: 22 años, 6 meses
Puntos: 16
claro pero pero eso en la funcion que hay en la biblioteca se toman las medidas para evitar todo ese tipo de cosas... le hechaste un vistazo????? saludos
__________________
Haz la guerra en la cama y el amor donde se te de la gana...
El tiempo es el mejor maestro, lo único malo es que te mata...¡¡Aprovecha tu tiempo!!
  #63 (permalink)  
Antiguo 23/07/2005, 18:22
Avatar de meru-kun  
Fecha de Ingreso: noviembre-2002
Ubicación: Madrid
Mensajes: 854
Antigüedad: 22 años, 5 meses
Puntos: 0
Buenas, yo solo me paso porque he visto este tema del SQL-INJECTION, y quería comentar que hace poco me hicieron un Deface bastante interesante usando esa técnica. MIrando todos los formularios de la web, no se por donde me han conseguido entrar, así que sigo estando un poco "inseguro".

Yo, por mi parte he probado las típicas opciones que poneis por aquí, de las comillas o el ''=' (la que sea de ese estilo, ahora no recuerdo >_>), y no me cuela ninguna. Incluso la de los comentarios sale rechazada.

Además del Deface, escribieron un montonazo de código (una pagina entera), para subir sus archivos y subir una especie de spam-maker.

EDIT: Por cierto, lo del comentario -- no vale para nada si antes ya has comprobado bien lo de las comillas.
__________________
Tu portal de manga y anime.
  #64 (permalink)  
Antiguo 23/07/2005, 21:12
Avatar de mamon  
Fecha de Ingreso: enero-2002
Ubicación: Lima
Mensajes: 1.302
Antigüedad: 23 años, 4 meses
Puntos: 3
el -- no funciona para el access.. pero si para el MSSQL.. yo lo he probado, es para poder comentarios
__________________
Yo si sé lo que es trabajar duro, porque lo he visto.
  #65 (permalink)  
Antiguo 24/07/2005, 07:31
Avatar de meru-kun  
Fecha de Ingreso: noviembre-2002
Ubicación: Madrid
Mensajes: 854
Antigüedad: 22 años, 5 meses
Puntos: 0
Cita:
Iniciado por mamon
el -- no funciona para el access.. pero si para el MSSQL.. yo lo he probado, es para poder comentarios
¿Y para MySQL? Yo es que he puesto el ejemplo tuyo de 'mamon' -- , y no me funcionaba (me decía que no entraba así ni de coña). Y he pensado que era porque directamente "limpiaba" las comillas, para evitar esto.
__________________
Tu portal de manga y anime.
  #66 (permalink)  
Antiguo 24/07/2005, 12:58
Avatar de mamon  
Fecha de Ingreso: enero-2002
Ubicación: Lima
Mensajes: 1.302
Antigüedad: 23 años, 4 meses
Puntos: 3
bueno.. con mySQL creo que también funciona.. pero claro, si tu limpias comillas no va funcionarte xq con lo que he puesto también uso comillas...

es solo algo que leí en un manual de SQL Injection, que los dos guiones sirven para eso
__________________
Yo si sé lo que es trabajar duro, porque lo he visto.
  #67 (permalink)  
Antiguo 25/07/2005, 08:46
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 22 años
Puntos: 5
Cita:
Iniciado por u_goldman
qry = "SELECT a.*, b.iGroup_id FROM tbl_iGroup_user a INNER JOIN xref_iGroup_user b " & _
" ON a.iGroup_user_id = b.iGroup_user_id WHERE a.iGroup_user_email = ? AND " & _
" a.iGroup_user_password = ? AND a.iGroup_user_active = 1 "
Set param = cmd.CreateParameter("user_name", adVarChar, adParamInput, 200, m_user_name)
cmd.Parameters.Append(param)
Set param = cmd.CreateParameter("user_password", adVarChar, adParamInput, 20, m_user_password)
cmd.Parameters.Append(param)
cmd.ActiveConnection = ObjConn
cmd.CommandText = qry
cmd.CommandType = adCmdText
rs.CursorType = 3
rs.Open cmd
tengo unas dudas ug... y espero por favor me las aclares:
no conosco mucho de createparameter, de lo que he buscado (http://www.w3schools.com/ado/met_com...eparameter.asp) solo explican el funcionamiento... quiero saber su utilización.
por ejemplo, yo puse mi script asi pero me manda error... yo puse mi query asi:
Código:
qry = "select * from usuario where usuario= ? and clave= ? "
y lo demas asi:
Código:
Set param = cmd.CreateParameter("usuario", adVarChar, adParamInput, 12, m_user_name)
   cmd.Parameters.Append(param)
   Set param = cmd.CreateParameter("clave", adVarChar, adParamInput, 128, m_user_password)
y donde esta esto:

Código:
Set ObjConn = Server.CreateObject("ADODB.Connection")
   Set rs = Server.CreateObject("ADODB.Recordset")
   Set cmd = Server.CreateObject("ADODB.Command")
   ObjConn.Open = DBOpenConection()
es donde se coloca Provider=SQLOLEDB; bla bla bla... cierto?? DBOpenConection es la funcion donde tengo eso... esta correcto??

que tengo mal allí??
no se para que son los "?" en el qry...
ayuda por favor

gracias
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #68 (permalink)  
Antiguo 25/07/2005, 10:41
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Hola Saruman, pueden haber unos cuantos errores ahi, ya que esto es un poco latoso al principio, en realidad si te fijas en este codigo primero creamos la conexion a la base de datos

Set ObjConn = Server.CreateObject("ADODB.Connection")
.
.
.
Y despues, se supone que debiera de ir el string que abre la base de datos, el cual yo siempre lo guardo como una variable y lo tengo a nivel de include, lo cual se traduce mas o menos en:

ObjConn.Open strConnect

Siendo strConnect algo asi:

Código:
	strConnect = "Provider=SQLOLEDB.1;"&_
				 "User ID=algo;Password=algo;Initial Catalog=CCRC;Data Source=mi_servidor"
Los ? en la sentencia SQL, sustituyen a las variables que le pasas de modo normal, siendo entonces que para ? necesitaras crear su parametro correspondiente

Set param = cmd.CreateParameter("nombre_del_parametro", tipoAd, adParamInput_si_es_de_entrada, variable_que_contiene_el_valor)

Cualquier cosa por aca andamos...


Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #69 (permalink)  
Antiguo 25/07/2005, 10:48
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 22 años
Puntos: 5
gracias UG.
lo de la coneccion si asumi que la tenias en un include, solo q yo la utilizo como una funcion, eso es todo...
bueno, pero entonces.. con respecto a lo de:

qry = "select * from usuario where usuario= ? and clave= ? "

que tengo mal alli?? si los campos que quiero validar son usuario y clave??
me ayudas porfavor??

gracias
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #70 (permalink)  
Antiguo 25/07/2005, 10:57
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Con la sentencia no hay nada mal, ahora te debes fijar en varias cosas:

1. Que estes creando los parametros correspondientes por cada ?, es decir, tienes que crear dos y hacer el respectivo append
2. Que tengas los tipos de dato correctos para cada campo dentro de la sentencia donde creas el parametro
3. Que tengas valores en esas variables

Es decir:
Código:
m_user_name = "u_goldman"
m_user_password = "loquesea"

qry = "select * from usuario where usuario= ? and clave= ? "
[1]
Set param = cmd.CreateParameter("usuario", [2]adVarChar, adParamInput, [2]12, m_user_name)
cmd.Parameters.Append(param)
Set param = cmd.CreateParameter("password", [2]adVarChar, adParamInput, [2]128, m_user_password)
cmd.Parameters.Append(param)
[/1]
Despues todo el rollo que asignas la conexion activa al objeto command(cmd), le asignas el commandtext y el commandtype, asignas el cursor al rs y abres tu rs pasandole el cmd, si quieres pon tu codigo y dime que error te manda y con gusto te ayudo, ten en cuenta que la sentencia esta buscando en dos campos varchar de 12 y 128 de longitud respectivamente, donde uno valga lo que tiene m_user_name y el otro m_user_password.

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #71 (permalink)  
Antiguo 25/07/2005, 11:28
Avatar de mamon  
Fecha de Ingreso: enero-2002
Ubicación: Lima
Mensajes: 1.302
Antigüedad: 23 años, 4 meses
Puntos: 3
y para qué sirve eso?
__________________
Yo si sé lo que es trabajar duro, porque lo he visto.
  #72 (permalink)  
Antiguo 25/07/2005, 11:52
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Bueno mamon(no se que me da al llamarte por tu nick ), en fin, dicen los que saben, que al utilizar este tipo de consultas parametrizadas, primero tu consulta se vuelve menos abstracta, despues haces un adecuado uso de los recursos de tu sistema, pues la estas manipulando a traves de comandos que contienen solamente las caracteristicas especificas para trabajar con tu recordset, y finalmente logras un aumento considerable en la seguridad de tu sistema, llamese por ejemplo, que no te puedan hacer SQL Injection.

Finalmente, es una manera muy intuitiva de trabajar con tu base de datos, toda vez que te acostumbres a escribir tanto codigo, y es el mejor "approach" para migrar a .NET tambien.

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #73 (permalink)  
Antiguo 25/07/2005, 11:55
Avatar de mamon  
Fecha de Ingreso: enero-2002
Ubicación: Lima
Mensajes: 1.302
Antigüedad: 23 años, 4 meses
Puntos: 3
oh! chevere gracias!
__________________
Yo si sé lo que es trabajar duro, porque lo he visto.
  #74 (permalink)  
Antiguo 25/07/2005, 12:37
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 22 años
Puntos: 5
ok, ya me funciona bien, pero ahora no se porque me manda error en la coneccion...


Microsoft OLE DB Provider for SQL Servererror '80040e4d'

Login failed for user 'BIOL'. /bi/users/login.asp, line 9

cuando lo hago asi no me funciona:

Código:
 ObjConn.Open = DBOpenConection()
pero cuando le pongo todo el string si:

Código:
 
conectar = "Provider=sqloledb;" & _ 
	   "Data Source=" & strDBPath & ";" & _
	   "Persist Security Info=False;Trusted_Connection=false;" & _
	   "Initial Catalog=" & strDBName & ";" & _
	   "User Id=" & strDBUserId & ";" & _
	   "Password=" & strDBPassword
  
.
.
ObjConn.Open conectar
yo en todo el sistema que estoy haciendo lo utilizo como está arriba y me funciona perfectamente... cual es el problema??

esta es la funcion:

Código:
 
Function DBOpenConection()
  Dim Master
  Dim strSringConection
  
  strStringConection = "Provider=sqloledb;" & _ 
		"Data Source=" & strDBPath & ";" & _
		"Persist Security Info=False;Trusted_Connection=false;" & _
		"Initial Catalog=" & strDBName & ";" & _
		"User Id=" & strDBUserId & ";" & _
		"Password=" & strDBPassword
  
  Set Master = Server.CreateObject("ADODB.Connection")
  Master.Open strStringConection
  Set DBOpenConection = Master
 End Function
me puedes ayudar??
gracias....
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #75 (permalink)  
Antiguo 25/07/2005, 12:49
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Esta funcion te regresa un objeto no?

Que tal asi?

Set ObjConn = DBOpenConection()
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #76 (permalink)  
Antiguo 25/07/2005, 13:00
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 22 años
Puntos: 5
no, que va.. no funciona tampoco:


Microsoft VBScript runtime error '800a01b6'

Object doesn't support this property or method: 'ObjConn.Open' /bi/users/login.asp, line 13

que puede ser??

por ejemplo, yo lo utilizo asi en otras paginas y me funciona:

Código:
 
set oConn = Server.CreateObject("ADODB.Connection")
 set RSElenco = Server.CreateObject("ADODB.Recordset")
 
 oConn.Open = DBOpenConection()
gracias por responder
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #77 (permalink)  
Antiguo 25/07/2005, 13:04
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Saru,

Finalmente esta es una llamada mas a tu funcion que te regresa un objeto conexion, deberias poderlo hacer como lo haces regularmente:

Código:
set oConn = DBOpenConection()
 set RSElenco = Server.CreateObject("ADODB.Recordset")
 
 'oConn.Open = DBOpenConection()
A ver que tal, si no, pon tu codigo, pero me parece que de esta forma no deberias tener problemas...
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #78 (permalink)  
Antiguo 25/07/2005, 13:22
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 22 años
Puntos: 5
que va... lo probe de nuevo y nada...


Código:
Public Function UserLogin(m_user_name, m_user_password)
  if m_user_name <> "" then
   conectar = "Provider=sqloledb;" & _ 
	   "Data Source=" & strDBPath & ";" & _
	   "Persist Security Info=False;Trusted_Connection=false;" & _
	   "Initial Catalog=" & strDBName & ";" & _
	   "User Id=" & strDBUserId & ";" & _
	   "Password=" & strDBPassword
   Set ObjConn = Server.CreateObject("ADODB.Connection")
   Set rs = Server.CreateObject("ADODB.Recordset")
   Set cmd = Server.CreateObject("ADODB.Command")
   ObjConn.Open conectar
   qry = "select * from usuario where usuario= ? and clave= ? "
   Set param = cmd.CreateParameter("usuario", adVarChar, adParamInput, 12, m_user_name)
   cmd.Parameters.Append(param)
   Set param = cmd.CreateParameter("clave", adVarChar, adParamInput, 128, m_user_password)
   cmd.Parameters.Append(param)
   cmd.ActiveConnection = ObjConn
   cmd.CommandText = qry
   cmd.CommandType = adCmdText
   rs.CursorType = 3
   rs.Open cmd
   if rs.bof=false and rs.eof=false then
	strTemp = "conectó bien"
   else
	strTemp = "no conectó"
   end if
  else
   strTemp = ""
  end if
  Set rs = Nothing
  ObjConn.Close
  Set ObjConn = Nothing
  Set cmd = Nothing
  Set param = Nothing
  
  UserLogin = strTemp
 End Function
Código:
 xx = UserLogin(usuario, password)
las funcion de coneccion está arriba....
gracias de nuevo
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #79 (permalink)  
Antiguo 25/07/2005, 13:29
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Código:
 conectar = "Provider=sqloledb;" & _ 
	   "Data Source=" & strDBPath & ";" & _
	   "Persist Security Info=False;Trusted_Connection=false;" & _
	   "Initial Catalog=" & strDBName & ";" & _
	   "User Id=" & strDBUserId & ";" & _
	   "Password=" & strDBPassword
   Set ObjConn = Server.CreateObject("ADODB.Connection")
   ObjConn.Open conectar
Ok, lo importante aqui son varias cositas...

1. Que error manda?
2. Las variables strDBUserId y strDBPassword tienen sus valores correctos?


Yo creo que deberia ser un problema de valores incorrectos para el string de conexion, todo lo demas se ve bien
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #80 (permalink)  
Antiguo 25/07/2005, 13:41
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 22 años
Puntos: 5
no ug,... todo esta bien.. el error que me manda es cuando seteo la variable de coneccion... esa funcion la estoy utilizando ya..... no te puse tanto detalle porque se asume que ya tienen valores... lo que estamos viendo es el porque no conecta del modo que trabajo yo... me explico....?

todo funciona bien si pongo el string de coneccion directo.... asi si funciona... pero si lo pongo utilizando mi funcion (reitero, funciona...) entonces me manda errro de usuario de la base de datos, SQL server 2000.

mira los posts anteriores para que veas....
este es: http://www.forosdelweb.com/showpost....0&postcount=74

gracias
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #81 (permalink)  
Antiguo 25/07/2005, 13:52
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Como esta la estructura de tu codigo?
Hiciste esta funcion en una clase o la tienes en una funcion y donde esta dicha funcion y la de conexion a la DB?
Se me hace que el problema entonces es de estructura en tu codigo Saru...

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #82 (permalink)  
Antiguo 25/07/2005, 14:05
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 22 años
Puntos: 5
ug... tengo esa funcion en el archivo del login actual....
con el que está funcionanndo actualmente, me conecta bien pero quiero usar esta y no puedo.... por los motivos ya discutidos....

creeme... no es problema en el código.... porque si fuera asi porque funciona de la otra forma?

si lo pongo seteando la variable con mi funcion me trae esto, que deberia funcionar...


Microsoft VBScript runtime error '800a01b6'

Object doesn't support this property or method: 'ObjConn.Open' /bi/users/login.asp, line 13


alguna otra sugerencia?

saludos
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #83 (permalink)  
Antiguo 25/07/2005, 14:09
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
mmmmhhhh...pues entonces solo me queda tratar de adivinar, trata quitandole el atributo Public a la funcion
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #84 (permalink)  
Antiguo 25/07/2005, 14:16
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 22 años
Puntos: 5
ya lo hice y nada.... Dios Mio.. que pasiencia has tenido UG.
Te lo agradezco... pero no funciona aún....

oye, prueba tu con lo que he puesto para ver.... quizas si otro lo revise pueda ver mejor el problema... estoy desde la mañana en eso
gracias de nuevo
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #85 (permalink)  
Antiguo 25/07/2005, 14:32
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Código:
Function DBOpenConection()
  Dim Master
  Dim strSringConection
  
  strStringConection = "Provider=SQLOLEDB.1;"&_
	             "Persist Security Info=True;"&_
				 "User ID=ug;Password=1;Initial Catalog=CCRC;Data Source=phoenix"
  
  Set Master = Server.CreateObject("ADODB.Connection")
  Master.Open strStringConection
  Set DBOpenConection = Master
 End Function
 
 	Public Function UserLogin(m_user_name, m_user_password)
		if m_user_name <> "" then
			Dim ObjConn
			Dim cmd
			Dim param
			Dim rs
			Dim qry
			Dim strTemp
			Set ObjConn = Server.CreateObject("ADODB.Connection")
			Set rs = Server.CreateObject("ADODB.Recordset")
			Set cmd = Server.CreateObject("ADODB.Command")
			'ObjConn.Open strConnect
			ObjConn.Open DBOpenConection()
			qry = "SELECT a.*, b.iGroup_id FROM tbl_iGroup_user a INNER JOIN xref_iGroup_user b " & _
			" ON a.iGroup_user_id = b.iGroup_user_id WHERE a.iGroup_user_email = ? AND " & _
			" a.iGroup_user_password = ? AND a.iGroup_user_active = 1 "
			Set param = cmd.CreateParameter("user_name", adVarChar, adParamInput, 200, m_user_name)
			cmd.Parameters.Append(param)
			Set param = cmd.CreateParameter("user_password", adVarChar, adParamInput, 20, m_user_password)
			cmd.Parameters.Append(param)
			cmd.ActiveConnection = ObjConn
			cmd.CommandText = qry
			cmd.CommandType = adCmdText
			rs.CursorType = 3
			rs.Open cmd
			if not rs.EOF then
				session("user_privateID") = rs(0)
				strTemp = ""
				while not rs.EOF
					strTemp = strTemp & rs("iGroup_id") & ","
					rs.MoveNext
				wend
				strTemp = left(strTemp, len(strTemp) - 1)
			else
				strTemp = ""
			end if
		else
			strTemp = ""
		end if
		Set rs = Nothing
		'ObjConn.Close
		Set ObjConn = Nothing
		Set cmd = Nothing
		Set param = Nothing
		UserLogin = strTemp
	End Function
	
	xx = UserLogin("[email protected]", "1")
Bueno, acabo de probar esto y funciona...entonces lo unico que me queda es que aunque digas que no, haya algo mal en los valores de autentificacion, trataste imprimiendo ese string de conexion?
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #86 (permalink)  
Antiguo 25/07/2005, 14:47
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 22 años
Puntos: 5
lo mismo ug... me sigue mandando error...

Provider=SQLOLEDB.1;Persist Security Info=False;User ID=BIOL;Initial Catalog=BIONLINE;Data Source=127.0.0.1;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=EZEQUIEL-MX;Use Encryption for Data=False;Tag with column collation when possible=False

esto viene cuando imprimo la funcin dbopenconection()

y esto cuando llega a ObjConn.Open DBOpenConection()



Microsoft OLE DB Provider for SQL Server
error '80040e4d'

Login failed for user 'BIOL'.

/bi/users/login.asp, line 61
en la linea 61 es lo que esta en rojo
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #87 (permalink)  
Antiguo 25/07/2005, 14:52
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 23 años, 4 meses
Puntos: 98
Nope, se me hace que el problema deberia estar con la forma en que te conectas...

Mas alla de eso ya no se!

http://www.aspfaq.com/show.asp?id=2138

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #88 (permalink)  
Antiguo 25/07/2005, 15:02
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 22 años
Puntos: 5
u_goldman... dejame decirte que me has ayudado en muchos otros temas, pero como este man... ninguno
la verdad, seguiré buscando y en cuanto lo solucione (si Dios quiere) entonces los publico aqui ok?
bueno, gracias y seguiré buscand e investigando sobre esto.

saludos....

pd. hay alguna otra persona que me pueda ayudar
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #89 (permalink)  
Antiguo 25/07/2005, 15:18
Avatar de Neuron_376  
Fecha de Ingreso: abril-2005
Mensajes: 1.051
Antigüedad: 20 años, 1 mes
Puntos: 2
Hola

Bueno, solo viendo por encimita se mira que dice que el usuario no es aceptado, revisa si ese usuario tiene permisos suficientes, si el password esta bien, etc.

Suerte!!
__________________
NeuronaNet.com... la idea correcta.
http://www.NeuronaNet.com
  #90 (permalink)  
Antiguo 25/07/2005, 15:26
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 22 años
Puntos: 5
Cita:
Iniciado por Neuron_376
Bueno, solo viendo por encimita se mira que dice que el usuario no es aceptado, revisa si ese usuario tiene permisos suficientes, si el password esta bien, etc.

Suerte!!
es a esto a lo que te refieres??



si, ya tienen permisos... si no es esto, por favor me dices.
gracias
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
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 11:19.