Foros del Web » Programando para Internet » PHP »

Odio las sesiones...¡¡¡¡¡¡¡¡¡

Estas en el tema de Odio las sesiones...¡¡¡¡¡¡¡¡¡ en el foro de PHP en Foros del Web. Holas a todos nuevamente, si pues ya sabrán que de nuevo tengo problemas con las seiones :(, es queb recien estoy aprendiendo pues. El problema ...
  #1 (permalink)  
Antiguo 10/01/2004, 20:04
 
Fecha de Ingreso: diciembre-2003
Mensajes: 148
Antigüedad: 14 años
Puntos: 0
Odio las sesiones...¡¡¡¡¡¡¡¡¡

Holas a todos nuevamente,
si pues ya sabrán que de nuevo tengo problemas con las seiones :(, es queb recien estoy aprendiendo pues. El problema es yo quiero pasar las sesiones , en un post anterior me dijeron que lo podia hacer automaticamente, es decir poner el session_use_trans_id = 1, ya ahora mi consulta

1. En cual modificar, en el de la carpeta de php o la del WINNT
2. si es mejor automaticamente porque dice esto en el ini

; trans sid support is disabled by default.
; Use of trans sid may risk your users security.
; Use this option with caution.
; - User may send URL contains active session ID
; to other person via. email/irc/etc.
; - URL that contains active session ID may be stored
; in publically accessible computer.
; - User may access your site with the same session ID
; always using URL stored in browser's history or bookmarks.

3. como hago para pasarle el SID en metodo GET pero de un header porq quiero concatenar y no puedo es que todos los ejemplos son : incrustando el SID en el querystring pero esta vez el header es codigo php como lo concateno??

Saludos
Rubén
  #2 (permalink)  
Antiguo 11/01/2004, 13:14
 
Fecha de Ingreso: diciembre-2003
Mensajes: 148
Antigüedad: 14 años
Puntos: 0
Re: Odio las sesiones...¡¡¡¡¡¡¡¡¡

Por favor ayuda...¡¡¡¡ es urgente
Saludos
Rubén
  #3 (permalink)  
Antiguo 11/01/2004, 13:49
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

1) En el que te diga el phpinfo() (primer bloque) que usa. Normalmente el del directorio windows (o winnt). Recuerda reiniciar el servidor cuando lo modifiques.

2) Eso es cierto, si el id se propaga por URL, ya sea automaticamente o haciendolo tu manualmente. Por cookies es un poco mas seguro. Pero por URL solo lo usas cuando las cookies estan deshabilitadas (o deberias), asi que es por necesidad: o por URL o sin sesiones.

3) No entiendo cual es tu problema. Se supone que con:
Código PHP:
header("Location: pagina.php?".SID);
exit; 
Eso si, creo que SID solo esta definida cuando no existe la cookie. No es problema, porque es solo en ese caso cuando necesitamos pasarlo por URL.

Por cierto, si usas links o redirecciones javascript tambien tienes que añadir a mano el SID.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #4 (permalink)  
Antiguo 11/01/2004, 16:11
 
Fecha de Ingreso: diciembre-2003
Mensajes: 148
Antigüedad: 14 años
Puntos: 0
puse el trans_id en 1 en el WINNT y por sea caso en la carpeta del php , paso el SID, pero me deja hacer copy paste en otra carpeta , lo deja entrar, q estara fallando?

Saludos
Rubén
  #5 (permalink)  
Antiguo 11/01/2004, 20:49
 
Fecha de Ingreso: diciembre-2003
Mensajes: 148
Antigüedad: 14 años
Puntos: 0
y muchachos, saben algo de mi problema??? Pongo copy paste en otra ventana y si accede, q puede hacer y le paso el SID pa colmo, q pasa?

Saludos
Rubén
  #6 (permalink)  
Antiguo 12/01/2004, 03:25
Avatar de ||Dj||  
Fecha de Ingreso: enero-2002
Mensajes: 2.349
Antigüedad: 15 años, 10 meses
Puntos: 1
Man, si no recibis respuesta es porque los demas no saben, o no les interesa el tema.
Esta por demas mal visto subir los mensajes de esa forma.
  #7 (permalink)  
Antiguo 12/01/2004, 03:37
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
¿Que es copy-paste en otra ventana? Porque si es copiar la URL en otra ventana, y que te entre autentificado, es logico. Entres de la forma que entres, si pasas un SID valido y activo, te va a dejar entrar. Ya sea en otra ventana o con otro navegador (si en la URL va el SID).

Asi que no es un fallo (si es que he entendido bien).

Saludos.

PD: Si nadie te responde, en lugar de repetir tu mensaje, añade mas datos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #8 (permalink)  
Antiguo 12/01/2004, 16:00
 
Fecha de Ingreso: diciembre-2003
Mensajes: 148
Antigüedad: 14 años
Puntos: 0
ok josemi, muchas gracias, tomaré caso a lo que dices.
Ya mira si es cortar y pegar la url en otra ventana, se supone que no debe pasar eso si es una página segura? no es cierto, entonces como haría para que no suceda esto?? o sea copiar y pegar el url

Saludos
Rubencin
  #9 (permalink)  
Antiguo 12/01/2004, 16:23
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Pero .. vamos a ver...

Cuando cortas y pegas tu URL .. en el URL está (ves fìsicamente) el SID (Identificador único de sesión):

algo tipo:
nose.php?PHPSESSION=asdfyu9676sdf88ef0asdf

Si lo ves .. si cortas y pegas siempre tendras ese SID válido (y no sólo en tu PC sino si se lo "mandas" a otro PC). (bueno, depende de la versión de PHP que uses .. ahí se mejoró ese tema en las últimas versiones de PHP donde ahora se mira (chekea) el HOST que crea nua sesión para evitar eso mismo).

Si propagas el SID en cookies .. evitas ese problema de seguridad (hacia otros PC) .. En el mismo .. todas las ventanas que habras desde una que inicie una sesión llevarán el SID propagado si usas:

session.use_trans_sid =1
session.use_cookies = 1

Te invito a leer la documentación oficial de PHP al respecto.
www.php.net/session .. Ahí se describen todas esas (y más que hay) directivas de configuración . .y, dependiendo de el valor de estas y combinaciones tu tratamiento de sesiones (programación) se puede comportar de una forma u otra. No "supongas nada" .. lee la documentación y veras.


Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #10 (permalink)  
Antiguo 14/01/2004, 18:07
 
Fecha de Ingreso: diciembre-2003
Mensajes: 148
Antigüedad: 14 años
Puntos: 0
Hola a todos, el php.ini esta de esta manera:

session.use_trans_sid =1
session.use_cookies = 1

lo que en verdad quiero es como cualquier pagina normal, copias y pegas la url de una pagina segura y no debe pasar nada, osea no te debe dejarlo ver.

Saludos
Rubén
  #11 (permalink)  
Antiguo 15/01/2004, 02:31
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Veamos, eso es como funciona el navegador. Si en la URL que pegas va el SID, te la va a tomar como valido si la sesion todavia esta activa. Y si en la URL no va el SID, sino que este va por cookie, todas las ventanas del mismo navegador en el mismo equipo comparten las mismas cookies, asi que si tienes la cookie creada en una ventana, y abres otra ventana del mismo navegador en el mismo equipo, el navegador enviara la cookie con el SID de la sesion activa.

Doy por supuesto que tienes otra ventana ya autentificada.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #12 (permalink)  
Antiguo 15/01/2004, 16:21
 
Fecha de Ingreso: diciembre-2003
Mensajes: 148
Antigüedad: 14 años
Puntos: 0
Que tal josemi, gracias por contestar, si eso según la doicumentación ya entendía por URL y por cookies es la cosa esta de las sesiones. Lo que tu me dices es cierto, pero ese es mi problema, no quiero q en otra ventana de la misma PC aparezca pegando el mismo url, como sería, de hecho q no debe aparecer el SID no?.

Tu que me recomiendas, tu que harías, que es lo más apropiado para tí?

Saludos
Rubén
  #13 (permalink)  
Antiguo 16/01/2004, 13:59
 
Fecha de Ingreso: diciembre-2003
Mensajes: 148
Antigüedad: 14 años
Puntos: 0
Sería mejor si lo uso como URL pasarlo como POST para q no salga en la URL?

Saludos
Rubencin
  #14 (permalink)  
Antiguo 16/01/2004, 15:18
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Propagando el SID en metodo POST (en principio sólo en formularios con campos hidden) y NO usando propagación del SID en cookies ni automático (las dos directivas esas que mencioné a OFF o 0) .. Al cortar y pegar el URL no seguiría activa tu sessión por qué no le propagas el SID ..

Pero .. una recarga de pagína tampoco funcionaría (perderías el SID) y tu navegador te pediría "reenviar los datos".

En fin .. la pregunta es:
Teniendo en cuenta que el "cortar y pegar" de un URL si no va propagado el SID en el (usas cookies para propagar el SID) no va afectar más que a la posibilidad de que abran mas ventanas de esa sesión en ese único PC (navegador) o que puedan recargar sus páginas sin problemas.. ¿ Porqué no quieres que te abran una nueva ventana ?

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #15 (permalink)  
Antiguo 16/01/2004, 16:28
 
Fecha de Ingreso: diciembre-2003
Mensajes: 148
Antigüedad: 14 años
Puntos: 0
Cluster q tal, gracias por contestar, mira en verdad tienes razón en parte, o sea que el patita pegue y corte en la misma PC no hay problema, lo que yo creo es q me aconsejas que use la automatica con cookies, pero me acuerdo q tu mismo me dijistes q el problema era si habia un navegador q no usara cookies y ahi si no se que problemas habrían, tu lo sabes?

Saludos
Rubencin
  #16 (permalink)  
Antiguo 16/01/2004, 19:44
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Pues si el navegador no acepta cookies .. no hay sistema de sesiones .. así de simple.

Si propagas el SID en el URL (sea a mano o automático) . .si el "patitas" .. pasa por un "referrer" de una web .. o un proxy .. etc .. va a dejar su SID por ahí rondando con el riesgo que eso puede llevar.

Pero, si lees los últimos "change-log" de las últimas versiones de PHP .. si mal no recuerdo .. ahora PHP verifica el "Host" que crea la sesión, así que aunque yo te "pase" mi SID válido ahora, el hecho de "pedirlo" desde otro host al que lo creó hará que ese SID no sea válido.

Pero, en la mayoría de sitios y hasta PHP.net recomienda que el SID se propague en Cookies por -seguridad- y por -compatibilidad- en el URL.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #17 (permalink)  
Antiguo 17/01/2004, 17:05
 
Fecha de Ingreso: diciembre-2003
Mensajes: 148
Antigüedad: 14 años
Puntos: 0
Pues gracias Cluster, voy a intentarlo haciendo con cookies, creo q segun lo estudiado y recomendado por uds. es mejor.

Pero tengo algunas preguntillas

- Porq me dices q se usa URL por compatibilidad? compatibilidad con qué?

- Si lo propago automatico con cookies, y despues de 10 minutos viene otro patita y el otro no se pues, lo puso en un bloc de notas (ya para exagerar), accedera a esa página????


Saludos

Rubén
  #18 (permalink)  
Antiguo 19/01/2004, 09:59
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
- Porq me dices q se usa URL por compatibilidad? compatibilidad con qué?
Compatibilidad con navegadores que acepten o no cookies.


Cita:
- Si lo propago automatico con cookies, y despues de 10 minutos viene otro patita y el otro no se pues, lo puso en un bloc de notas (ya para exagerar), accedera a esa página????
Para eso en PHP y en la configuración de sesiones tienes las directivas:

session.cookie_lifetime
Esta controla el tiempo máx. de expiración de esa cookie. Para que no entre otro "patitas" en X minutos y use una sesión activa en ese PC de otro usuario.

Y todas estas ..
session.gc_probability
session.gc_divisor
session.gc_maxlifetime

Gestionan el tiempo de expiración de la sesión en SID y del SID válido ..

Tu "patitas" sólo se tiene que preocupar de salir de tu aplicación cerrando tu aplicación (ventanas que pueda tener abiertas de ella) y/o por tu "logout" donde mates la sesión que usastes.


Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #19 (permalink)  
Antiguo 19/01/2004, 18:36
 
Fecha de Ingreso: diciembre-2003
Mensajes: 148
Antigüedad: 14 años
Puntos: 0
ok, gracias cluster por contestar mis inquietudes. Voy a tratar de resolverlo asi.

Otra pregunta más, al usar sesiones con cookies automaticamente entonces usar POST o GET me es indiferente no?


Saludos
Rubencin
  #20 (permalink)  
Antiguo 20/01/2004, 06:05
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Pues no es indiferente .. es más .. no tiene nada que ver una cosa con otra.

Las variables de sesión si usas los arrays superglobales (altamente recomendable) usarías $_SESSION .. y para GET .. $_GET .. para post $_POST y si tienes cookies también $_COOKIES .. Cada cosa va por su método y array asociado.

PHP al "usar cookies" lo único que hará es propagar el SID (nombre_sesion=fd897asdf8734asdf) en una cookie, sólo eso. El nombre de esa cookie es = al nombre de la sesión . .y el dato que contiene es ese ID de sesión.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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:51.