Foros del Web » Programando para Internet » PHP »

Duda con curl y sesion

Estas en el tema de Duda con curl y sesion en el foro de PHP en Foros del Web. Buenas, ¿Es posible mediante CURL o cualquier otra librería hacer una petición al script login.php y pasarle los siguientes datos: usuario, contraseña y token (campo ...
  #1 (permalink)  
Antiguo 28/11/2010, 13:56
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 8 meses
Puntos: 20
Duda con curl y sesion

Buenas,

¿Es posible mediante CURL o cualquier otra librería hacer una petición al script login.php y pasarle los siguientes datos: usuario, contraseña y token (campo hidden)?

El factor a tener en cuenta es que la página en cada recarga de la web genera una variable de sesión especifica que hace de token y que coincide con el campo hidden del formulario de entrada a la web.

¿Existe alguna forma de simular un login remoto?

Muchas gracias
  #2 (permalink)  
Antiguo 28/11/2010, 15:45
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 10 meses
Puntos: 845
Respuesta: Duda con curl y sesion

Me parece que tendrias que hacer primer un GET para que te cargue el formulario, genere y guarde en session el token y luego hacer el POST para logearte(ovbiamente usando el mismo resource de la llamada anterior).
Todo esto es un gran creo, probalo y comentanos como te fue.

Salu2.
  #3 (permalink)  
Antiguo 28/11/2010, 15:58
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 8 meses
Puntos: 20
Respuesta: Duda con curl y sesion

Cita:
Iniciado por masterpuppet Ver Mensaje
Me parece que tendrias que hacer primer un GET para que te cargue el formulario, genere y guarde en session el token y luego hacer el POST para logearte(ovbiamente usando el mismo resource de la llamada anterior).
Todo esto es un gran creo, probalo y comentanos como te fue.

Salu2.
Lo que dices serviría para coger el PHPSESSID pero mi duda es, que no creo que con CURL se pueda coger ninguna variable de sesión más (incluida el session TOKEN, que has creado en el servidor). Sin embargo este coincide con el campo hidden del formulario, no se si se podrá enviar y saltarse esta medida.

Consigo explicarme?

Muchas gracias
  #4 (permalink)  
Antiguo 28/11/2010, 23:22
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: Duda con curl y sesion

cURL tiene la opción de usar un cookiejar con ella puedes guardar las cookies de sesión que envie el servidor y volverlas a retransmitir para mantener esas variables de sesión y simular un login desde código.

Saludos.
  #5 (permalink)  
Antiguo 29/11/2010, 00:42
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 8 meses
Puntos: 20
Respuesta: Duda con curl y sesion

Cita:
Iniciado por GatorV Ver Mensaje
cURL tiene la opción de usar un cookiejar con ella puedes guardar las cookies de sesión que envie el servidor y volverlas a retransmitir para mantener esas variables de sesión y simular un login desde código.

Saludos.
Cuando dices cookies de sesión son solo el PHPSESSID, no?

Si yo creo en el servidor estas variables de sesión en el servidor, con el cookiejar es capaz de capturarlas, modificarlas y/o mantenerlas? esa es mi duda inicial, yo pienso que no.

$_SESSION['usuario']
$_SESSION['password']
$_SESSION['logeado']

Que la única que puedes capturar es todo lo que se guarda como cookie en el lado del cliente, corrígeme si estoy equivocado.

Muchas gracias
  #6 (permalink)  
Antiguo 29/11/2010, 05:01
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: Duda con curl y sesion

No, porque las variables de sesión son solo legibles y modificables en el servidor solamente. Pero por algún lado tienes que iniciar sesión y llenar la información en el servidor, ahí es que tu envias la petición con cURL y luego capturas la variable cookie que envíes y la guardas como te indicaron usando CURLOPT_COOKIEJAR y CURLOPT_COOKIEFILE, para tomar el valor que se almacena en el PHPSESSID.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos

Etiquetas: curl
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 14:15.