Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > PHP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-05-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.142
Poder: 36
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

No sé si algo tan aparentemente sencillo como la siguiente función podría bastar:

Código PHP:
function IsCookiesEnabled(){
  
document.cookie 'testcookie';
  var 
result = (document.cookie.indexOf('testcookie') != -1);
  
document.cookie 'testcookie; expires=Thu, 01-Jan-70 00:00:01 GMT';
  return 
result;

Un ejemplo de uso:

Código PHP:
if(IsCookiesEnabled()){
  
alert('Cookies disponibles');
}else{
  
alert('Cookies NO disponibles');      

Actualización: Parece que también puede usarse algo así:

Código PHP:
if(navigator.cookieEnabled){
  
alert('Cookies disponibles');
}else{
  
alert('Cookies NO disponibles');      

* Resalto el código como PHP, pero, en realidad es JavaScript.
__________________
David Esperalta
www.decsoftutils.com

Última edición por dec fecha: 08-05-2007 a las 07:31:35.
Responder Con Cita
  #2  
Antiguo 10-05-2007
semptrion semptrion is offline
Miembro
 
Registrado: abr 2007
Posts: 112
Poder: 20
semptrion Va por buen camino
Por razones de seguridad

NO uses cookies. Usa sesiones.
Responder Con Cita
  #3  
Antiguo 10-05-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.142
Poder: 36
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Cita:
NO uses cookies. Usa sesiones.
Hombre,... eso es muy drástico, por lo menos. Las cookies, aunque hay cookies seguras, que yo nunca usé aún, no tienen porqué comprometer la seguridad, puesto que de guardar en ellas algo como una contraseña de usuario, por poner un ejemplo, lo haríamos desde luego cifrando los datos antes de guardarlos en la cookie.

Por otro lado, el uso de sesiones tiene una desventaja, y es su caducidad. Las cookies pueden durar años (que se lo pregunten a los chicos de Google que incluyen cookies que caducan dentro de 20 años por lo menos) y esto puede ser importante, no que duren 20 años, pero sí que duren algo más de lo que puede durar una sesión de usuario.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #4  
Antiguo 10-05-2007
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.572
Poder: 27
egostar Va camino a la fama
Cita:
Empezado por dec
Por otro lado, el uso de sesiones tiene una desventaja, y es su caducidad. Las cookies pueden durar años (que se lo pregunten a los chicos de Google que incluyen cookies que caducan dentro de 20 años por lo menos) y esto puede ser importante, no que duren 20 años, pero sí que duren algo más de lo que puede durar una sesión de usuario.
Yo no se nada de el manejo de cookies, pero me apoyo en el comentario de nuestro amigo David, de hecho Club Delphi avisa cuando finalizas tu sesión esto:

Cita:
Empezado por Club Delphi
Me parece lo más adecuado.

Salud OS.
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #5  
Antiguo 10-05-2007
semptrion semptrion is offline
Miembro
 
Registrado: abr 2007
Posts: 112
Poder: 20
semptrion Va por buen camino
Ok ok

Al cookies que vas a almacenar? la sesión de trabajo? la fecha de última conexión del usuario? el lugar de conexión? ha votado la última vez?

Dependiendo de la pregunta, la respuesta oscilará irremediablemente entre un problema de seguridad o de accesibilidad.

Si es para manejar sesiones, datos reservados, autenticación, validación, entonces estamos hablando de un serio problema de seguridad.

Y el problema no es que la cookie desaparezca una vez terminada la sesión, es que es una medida de seguridad implementada en el cliente!

Y tu sabes cual es el cliente que está usando la cookie que le diste?

Es realmente un browser? es realmente lo que dice ser?

Por otra parte, en el caso de que por políticas institucionales o del firewall organizacional no se puedan usar cookies, ese usuario será excluido del sistema?

Entonces se convierte en un problema de accesibilidad. Impedimos el acceso a los usuarios que no pueden o no quieren manejar cookies.

Y si el usuario no quiere que le coloquen cookies, actuamos como el Internet Explorer y no le consultamos y le obligamos a aceptarlas?

Yo uso mozilla y he configurado mi browser para que que no reciba cookies sin mi autorización. (Ahora hablo de la privacidad de los usuarios por si acaso.) Y cuando un sitio me pide permiso para colocar una cookie, me pongo muy curioso y juguetón.

Y más de una vez me he encontrado con sorpresitas.

Mejor leamos lo que dicen los que más saben del tema de las cookies y que las quieren como a sus propios hijos, pero... tampoco confían y esperan que se cambie y se limite el protocolo para las cookies.

http://www.cookiecentral.com/

En fin no hay mucha tela que cortar. Hay preceptos más sólidos que la simple facilidad o que "todo el mundo utiliza".

Esos son: seguridad y accesibilidad.

Saludos.
Responder Con Cita
  #6  
Antiguo 10-05-2007
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.142
Poder: 36
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Pero todo es rebatible. Las cookies sirven para lo que sirven: mantener, precisamente, en el cliente, cierta información, que luego podremos recoger de ese mismo cliente para usarla en nuestra aplicación. Para eso sirven las cookies: para hacer persistente cierta información del usuario entre sesiones y sesiones de este en nuestra aplicación. Y parece ser que van bien y se utilizan en no pocas circunstancias y en muchos sitios y empresas Web "de prestigio".

En cuanto a la accesibilidad... bueno. Pero es que también existen los requisitos. Una aplicación puede usar cookies opcionalmente, o puede tener como requisito que estas estén disponibles. Es un requisito. El cliente ha de cumplir con este requisito para trabajar con la aplicación. No diré que se usen para todo, sin pensar en las consecuencias, pero, para ciertas cosas son muy útiles, desde luego, y si hay que hacer uso de ellas... hay que hacer uso de ellas.

Ahora bien, vamos con la seguridad de las cookies. ¿En qué comprometen la seguridad y de qué seguridad estamos hablando? Si una aplicación guarda en cookies los datos necesarios para autentificar a un usuario (para algo tan útil como no tener que "hacer login" cada vez que visitas ciertas páginas Web), lo que está claro es que la aplicación no debe guardar en las cookies datos del usuario en claro, si estos pueden resultar comprometedores.

Y ahí iba yo más arriba con lo de guardar en una cookie la contraseña de un usuario, por ejemplo, previo cifrado de la misma. ¿Qué tiene el cliente? El cliente (ojo, sea quien sea el cliente, siempre que acepte cookies) como mucho va a tener una cookie que contiene una "clave", por ejemplo una cadena alfanumérica resultado del cifrado de la contraseña del usuario. Se me hace complicado que de esa cadena alfanumérica se pueda obtener la contraseña del usuario...

¿Entonces en qué se compromete la seguridad con las cookies? Hombre, si un usuario visita una aplicación y esta le coloca en una cookie el número de la tarjeta de crédito del usuario (en "claro") y en otra cookie le coloca el número secreto de su cuenta corriente o qué sé yo (siempre en claro)... ¡no es que las cookies sean inseguras, es que se está haciendo un uso fatal de ellas! Pero no es culpa de las cookies, desde luego.

Ahora, lo mismo es que me estoy perdiendo algo... advierto que estoy dispuesto a aprender.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #7  
Antiguo 10-05-2007
semptrion semptrion is offline
Miembro
 
Registrado: abr 2007
Posts: 112
Poder: 20
semptrion Va por buen camino
Seguridad de las cookies

El tema es que una cookie se puede copiar y reutilizar y preservar más allá de lo que el desarrollador quiere. Es decir, por ejemplo, creas una cookie de sesión para determinar la sesión del usuario conectado y así continuar con "el hilo" de la conexión.

Sin embargo, si el cliente no es un browser, no destruirá la cookie al terminar la sesión del browser, y podrá seguir utilizando la sesión para enmascarar al usuario. Resultado: rompieron tu seguridad en base a esa cadena cifrada ya que no necesitan descifrar lo que significa esa cadena, sólo se requiere la cadena para enviarla al servidor y hacerse pasar por el usuario previamente autenticado.

Copiar el archivo de una cookie no es tecnología de la NASA. Se puede hacer y se hace. En red mientras un usuario está conectado otro puede copiar su cookie y luego utilizarla.

Otra forma es enviar la cookie del usuario utilizando código html dinámico y javascript. Las puertas del infierno están abiertas y el que no lo sepamos no las cierra.

Así, vive feliz con las cookies, yo vivo feliz sin ellas.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
cookies halizia PHP 6 30-01-2007 17:52:20
administrar cookies hidal Internet 2 10-01-2007 00:19:56
Cookies en Delphi 8 samuelabad .NET 0 07-10-2006 20:47:31
duda con cookies Luzma PHP 4 08-07-2006 18:58:10
Asunto de cookies y sesiones gatsu PHP 3 26-04-2004 18:55:24


La franja horaria es GMT +2. Ahora son las 06:28:32.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi