Ver Mensaje Individual
  #8 (permalink)  
Antiguo 18/04/2004, 20:22
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Reynier ..

Probastes al leer la documentació oficial de PHP sobre sesiones:

www.php.net/session

No te lo digo por darmelas de ... sino por qué en el capítulo inicial del tema se explica que es el SID . como se puede propagar y todas las directivas de configuración que van afectar a como se propagará el SID (y que la mayoría ya te mencioné). Esa configuración de PHP se puede formazar (con ini_set()) para que tus scripts/aplicaciones se comporten igual ante diferentes configuraciones de PHP.

Lo mismo .. si lees ahí veras que directivas de configuración afectan al tiempo de expiración de la sesión y página (session.gc_maxtimelife y otra más que hay ..). Si tu propagas el SID por el URL tendrás que ajustar a poco tiempo esa directiva (entre otras) por qué sino tu sesión (ID) será todavía válido (por eso te hacía mención que es más seguro propagar el SID en cookies y con tiempo de expiración de cookie = 0 (session.cookie_expire = 0) ..)

El tema de que abras unas ventanas nuevas desde tu sesión iniciada con tu "ctr+u" o lo que te dé la gana siempre vas a tener el SID ahí propagado sea por el URL o bien en cookies. Las sesiones debes conocer que sólo son válidas para el cliente que las inicie .. no para nadie más. No veo donde está el problema de seguridad en ese caso cuando las ventanas que se habren son en el mismo cliente (navegador) yo lo veo como comodidad no como falla de seguridad .. Tus aplicacones son las que deben controlar por ejemplo que ID de un registro pretendes accionar sobre el (borrar/editar/actualizar .. etc) antes de hacer cualquier acción y que no te ocurra que si abres X ventas de tu aplicación que gestiona una Base de datos .. por un lado estés editando un registro y por otro lo estés borrando, pero esto ya no es aplicable sólo para ese cliente que está trabajando en varias cosas a la vez sino en todos los accesos a esa base de datos desde otros clientes .. así que .. insisto .. no veo claro donde está el problema de seguridad.

Lo que debes preocuparte es de trabajar con tiempos de expiración cortos para las sesiones y hacer funcionalidades para salir de tu aplicación que maten la sesión activa (el "logout") de forma segura para los que usen dicho "botón" y los usuarios "despistados" que no lo hagan .. ya lo hará tu configuración de PHP.

El problema vendrá (de seguridad) cuando en una sesión válida y activa propagues el SID a otro PC (ejemplo en un link que mandas por e-mail .. por un foro .. o como sea). (por eso insisto que son más seguras las cookies para propagar el SID en lugar que por el URL pese que esto dependa de un cliente que acepte cookies))

En fin .. que las sesiones les importa muchoooooooooo la configuración de PHP y por eso hay que leer SI o SI la documentación.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.