waldawalda Posted December 24, 2014 Share Posted December 24, 2014 Buenas. Estoy trabajando en una tienda y está siendo auditada por un despacho de abogados especializado en comercio electrónico LSSI y LOPD en España. Me indica que la sesión permanece abierta si cierra completamente el navegador y vuelve a entrar. Prestashop permite determinar el tiempo de la cookie front office en horas, con un mínimo de 1 hora (cero no funciona). Pero si alguien compra durante 10 minutos , no cierra sesión y después entra otra persona (ordenador público) verá los datos personales del anterior usuario. El abogado me indica que esto no es admisible en términos de seguridad con la actual ley y que debo hacerlo como en otras tiendas, en las que esto sí que ocurre. He podido comprobar que en tiendas web españolas así ocurre, pero no en aquellas hechas con Prestashop que he podido visitar. ¿Alguna solución o comentario? Gracias Link to comment Share on other sites More sharing options...
Sergio Ruiz Posted December 24, 2014 Share Posted December 24, 2014 (edited) ¿Has revisado esto: http://www.prestashop.com/forums/topic/293519-log-out-when-window-browser-is-closed/?do=findComment&comment=1814709 /classes/Cookie.php For people looking for solution for 1.6 version change the setexpire to this public function setExpire($expire) { $this->_expire = 0; } que dice jaychennai? Edited December 24, 2014 by Sergio Ruiz (see edit history) Link to comment Share on other sites More sharing options...
waldawalda Posted December 24, 2014 Author Share Posted December 24, 2014 Gracias. No funciona Sergio Ruiz. Lo acabo de probar con Chrome y sigue abierta la sesión. He probado casi todo lo que hay al respecto en español en este foro y en otras webs y nada funciona. La clave está en que un nuevo usuario no vea los datos personales del anterior, si este olvida cerrar sesión. Así funciona en otras tiendas y parece que es un requisito para cumplir la ley. Link to comment Share on other sites More sharing options...
Sergio Ruiz Posted December 24, 2014 Share Posted December 24, 2014 Gracias. No funciona Sergio Ruiz. Lo acabo de probar con Chrome y sigue abierta la sesión. He probado casi todo lo que hay al respecto en español en este foro y en otras webs y nada funciona. La clave está en que un nuevo usuario no vea los datos personales del anterior, si este olvida cerrar sesión. Así funciona en otras tiendas y parece que es un requisito para cumplir la ley. Entiendo el problema, estoy buscando por el foro ingles, que normalmente suele tener mas cobertura, al existir mas usuarios. (Lo que te comente, lo encontre en el foro ingles xD) Link to comment Share on other sites More sharing options...
waldawalda Posted December 24, 2014 Author Share Posted December 24, 2014 Buenas, lo que se podría hacer es mandar una alerta por javascript si el usuario hace por cerrar el navegador... para poder cerrarlo ha de clickear en el botón correspondiente y así ejecutas la función logout antes de que el navegador sea cerrado... Un saludo PD: Es más fácil y conveniente aborregar que enseñar... vaya leyes más chuscas que tenemos. Gracias Enrique. Eso es una posible solución. Me gustaría saber si existe una un poco menos intrusiva que una ventana de alerta, pero me la apunto. Link to comment Share on other sites More sharing options...
quimfrcr Posted December 24, 2014 Share Posted December 24, 2014 Me interesa el tema, no había caído en ello. Link to comment Share on other sites More sharing options...
joseantgv Posted December 25, 2014 Share Posted December 25, 2014 Lo que encuentro a faltar es la opción de "Recordarme en este ordenador" verdad? Porque en todas las tiendas tienes la opción de mantener la sesión aunque cierres la página. Link to comment Share on other sites More sharing options...
waldawalda Posted December 25, 2014 Author Share Posted December 25, 2014 (edited) Lo que encuentro a faltar es la opción de "Recordarme en este ordenador" verdad? Porque en todas las tiendas tienes la opción de mantener la sesión aunque cierres la página. Si. Eso resolveria la cuestion legal segun el abogado. Hay otras tiendas (como la de unos famosos grandes almacenes españoles, por no hacer publicidad) en la que, si cierras el navegador y vuelves a abrir , tienes que volver a identificarte obligatoriamente. No hay acceso a ultima sesion abierta ni a esos datos personales, ni te permite recordarlos en tu ordenador (aunque tal vez siga abierta internamente porque el carrito de la compra sí que lo recuerda). Edited December 25, 2014 by waldawalda (see edit history) Link to comment Share on other sites More sharing options...
silverx Posted December 26, 2014 Share Posted December 26, 2014 Interesante, me apunto para estar al tanto Link to comment Share on other sites More sharing options...
waldawalda Posted December 26, 2014 Author Share Posted December 26, 2014 Buenas a tod@s, parece que se puede conseguir sin mucho lio... no lo he probado en vivo pero parece funcionar. 1. En el menú de Administración -> Preferencias ponemos la cookie del front office a 0. 2. Ahora, abrimos el archivo Cookie.php de la carpeta classes y en la línea 65 veremos el _expire así: $this->_expire = is_null($expire) ? time() + 1728000 : (int)$expire; Lo dejamos así: $this->_expire = is_null($expire) ? time() + 0 : (int)$expire; Y con esto parece funcionar. En el caso de que así sea, convendría crear un override para esto. Saludos. Hola Enrique. Lo acabo de probar en vivo con mi web, pero no me funciona. Tanto en Chrome como en Opera la sesión sigue abierta con usuario y carrito lleno. ¿puede probarlo alguien más? (por si acaso tengo alguna directriz mal configurada en el servidor) Gracias Link to comment Share on other sites More sharing options...
waldawalda Posted December 26, 2014 Author Share Posted December 26, 2014 (edited) Buenas waldawalda, yo lo he probado con IE, Firefox, Chrome, Safari y Opera en sus últimas versiones y me funciona... Una ves hayas cambiado lo de la clase Cookie, límpia todas las caches del Prestashop incluyendo el class_index.php de la carpeta cache. Saludos. Voy a volver a intentarlo y te pregunto Enrique Engblom: He vaciado las caché y cookies en parametros avanzados/rendimiento ¿para limpiar el class_index.php cómo he de hacer? ¿Borro su contenido y lo grabo de nuevo vacío o borro ese archivo directamente? (soy algo novato) Gracias Edited December 26, 2014 by waldawalda (see edit history) Link to comment Share on other sites More sharing options...
waldawalda Posted December 26, 2014 Author Share Posted December 26, 2014 (edited) Tan solo elimina el archivo por ftp mismamente, al recargar la página el Prestashop generará uno nuevo. Saludos Pues sigue sin funcionarme. En un segundo intento borré toda la carpeta llamada caché para probar y ya no me cargaba la página. Al volver a restaurarla vía FTP sigue sin cargar la web. Parece que he estropeado toda la instalación y tendré que empezar de cero. Ahora tengo un problema mayor... Menos mal que no es una tienda operativa aún. Uso prestahop 1.6, no se si alguien más se anima a probar. Es posible que sea un problema de mi instalación, pues seguía abierta la sesión incluso borrando class_index.php Gracias Enrique por tu tiempo. Edited December 26, 2014 by waldawalda (see edit history) Link to comment Share on other sites More sharing options...
magali ferber Posted December 26, 2014 Share Posted December 26, 2014 Hola a todos! Voy a investigar con nuestro representante en España sobre este tema y se los comunico en cuanto tenga una respuesta. Gracias por traer el tema a nuestros foros, haré lo posible para solucionarlo. Waldawalda, con tu permiso, me gustaria cambiar el titulo del tema para que refleje mejor el tema que estamos tratando adentro. Gracias y saludos. 1 Link to comment Share on other sites More sharing options...
waldawalda Posted December 26, 2014 Author Share Posted December 26, 2014 Hola a todos! Voy a investigar con nuestro representante en España sobre este tema y se los comunico en cuanto tenga una respuesta. Gracias por traer el tema a nuestros foros, haré lo posible para solucionarlo. Waldawalda, con tu permiso, me gustaria cambiar el titulo del tema para que refleje mejor el tema que estamos tratando adentro. Gracias y saludos. Perfecto, muchas gracias. Entiendo que el titular puede sonar alarmista, aunque es básicamente un requerimiento legal el que me trae a plantearlo y creo que puede ser de interés para todos. Lo importante es que encontremos una solución para evitar consecuencias jurídicas imprevisibles. En mi caso poder resolver concluir este proyecto en prestashop, que me parece una solución de comercio muy completa y versátil respecto a otras que he probado. Link to comment Share on other sites More sharing options...
magali ferber Posted December 26, 2014 Share Posted December 26, 2014 Gracias por tu paciencia. Mientras busco una solución, aprovecho para aclarar que la razón por la cual he ajustado el titulo es porque no es lo mismo un "requerimiento legal" que un programa declarado "ilegal". Espero sepas entender esta modificación. Los tendré al tanto en cuanto tenga un informe de lo que está sucediendo. Link to comment Share on other sites More sharing options...
progger Posted December 27, 2014 Share Posted December 27, 2014 Buenas de nuevo, tan solo borras la caché y compilacion desde el back office y eliminas a mano el archivo class_index.php (por que no estoy seguro de que al borrar las caches lo elimine)... No has de borrar nada más y menos una carpeta... A mí me funciona lo que te he comentado en la versión 1.6.0.9 del Prestashop, a ver si alguien se anima a probarlo y nos cuenta. Un saludo. Cuando dices borrar la cache al class_index.php, te refieres al archivo que se encuentra en la carpeta cache de la web? Eso de la compilación desde el back office donde es exactamente?? Un saludo y gracias... Link to comment Share on other sites More sharing options...
quimfrcr Posted December 27, 2014 Share Posted December 27, 2014 Buenas waldawalda, yo lo he probado con IE, Firefox, Chrome, Safari y Opera en sus últimas versiones y me funciona... Una ves hayas cambiado lo de la clase Cookie, límpia todas las caches del Prestashop incluyendo el class_index.php de la carpeta cache. Saludos. Hola Enrique, yo lo he echo tal cual dices, solo borrar desde ftp el archivo class_index.php y desde BO limpiar cache y cookies. Y no me cierra la sesión. Link to comment Share on other sites More sharing options...
quimfrcr Posted December 27, 2014 Share Posted December 27, 2014 Buenas quimfrcr, no es suficiente cerrar la pestaña. Se ha de cerrar el navegador por completo para que destruya la sesión. Saludos. Gracias! Pues si funciona con eso. Espero que con eso sea suficiente! Link to comment Share on other sites More sharing options...
Sergio Ruiz Posted December 27, 2014 Share Posted December 27, 2014 (edited) Pero ahora que vuelvo a leer el tema, lo que comente en la primera respuesta del tema: http://www.prestashop.com/forums/topic/390397-requerimiento-legal-en-espa%C3%B1a-sesion-permanece-abierta-a-la-vista-de-posteriores-usuarios/?do=findComment&comment=1908092 sacado del foro ingles, tampoco andaba tan perdido xDDDD Realmente no he podido probar todavia el asunto, porque no he tenido tiempo, pero agradezco a Enrique la solución que nos ha dado. Gracias ! Edited December 27, 2014 by Sergio Ruiz (see edit history) Link to comment Share on other sites More sharing options...
waldawalda Posted December 29, 2014 Author Share Posted December 29, 2014 Lo probaré en cuanto recupere mi instalación. No me funcionó, pero si hay a quien ya le ha funcionado, algo debí hacer mal. Si alguien más se anima a probarlo sería estupendo. Gracias a Enrique , Sergio y todos por su ayuda. Pongo el asunto como resuelto. Sería deseable que se pueda resolver esto sin tener que modificar vía FTP en el futuro. Link to comment Share on other sites More sharing options...
progger Posted December 29, 2014 Share Posted December 29, 2014 Alguien me podría explicar que hay que hacer exactamente para que no se quede la sesión iniciada? Es que soy nuevo en todo esto y me lío un poco, sobre todo con lo de borrar la cache o no, es que no lo tengo muy claro. Un saludo y gracias... Link to comment Share on other sites More sharing options...
waldawalda Posted December 30, 2014 Author Share Posted December 30, 2014 Pues lamento abrir este hilo otra vez, pero tras recuperar mi instalación, he probado modificar esa linea en clasess/cookie.php ,hacer clear caché smarty en PARAMETROS AVANZADOS/RENDIMIENTO, borrar el archivo class_index.php de la carpeta caché y después borrar los archivos temporales y cookies de mi navegador. Hecho esto, me identifico como usuario en mi tienda, cierro completamente el navegador, saliendo de chrome y al volver a abrir sigue apareciendo mi logín "hola Luis" y acceso a mis datos. En un mac con yosemite, probado en chrome, safari y opera, con prestashop 1.6.0.5 Para más señas uso el tema TRANSFORMER y los módulos de prestashop addons: One Page Checkout for Prestashop y Ley Europea de Cookies (Aviso + Bloqueador de Cookie) Si alguien más puede probar este tema le estaría muy agradecido para saber si esto es un problema que ocurre únicamente con mi tienda. Gracias Link to comment Share on other sites More sharing options...
waldawalda Posted December 30, 2014 Author Share Posted December 30, 2014 Buenas waldawalda, no será por que el módulo de ley de cookies que usas lleva algún override para la clase Cookie?... desconozco si es así o nó. Un saludo. Hola Enrique. He desinstalado ese módulo para probar esto que me sugieres y que me pareció interesante. He vuelto a limpiar cache, borrar class_index, borrar archivos temporales de navegador, login, cerrar, entrar , pero la sesión sigue abierta. Uso un hosting VPS en OHV (por dar más detalles). He probado hacerlo con check IP adress activada y desactivada(por si esto influye) y siempre con duración de la cookie front office y bakoffice a 0 Link to comment Share on other sites More sharing options...
progger Posted January 7, 2015 Share Posted January 7, 2015 Hola, yo sigo sin poder solucionar esto, alguien me puede echar una mano por favor? Gracias y un saludo... Link to comment Share on other sites More sharing options...
CarlosZGZ Posted January 8, 2015 Share Posted January 8, 2015 Hola, yo sigo sin poder solucionar esto, alguien me puede echar una mano por favor? Gracias y un saludo... A mí tampoco me funciona, esto debería arreglarlo prestashop de serie. Link to comment Share on other sites More sharing options...
progger Posted January 8, 2015 Share Posted January 8, 2015 Ya lo se, pero si no lo solucionan ellos, o mientras lo solucionan, deberian darnos una solución... Saludos... 1 Link to comment Share on other sites More sharing options...
CarlosZGZ Posted January 8, 2015 Share Posted January 8, 2015 Ya lo se, pero si no lo solucionan ellos, o mientras lo solucionan, deberian darnos una solución... Saludos... Me como mis palabras, haciendo lo que decía el compañero, borrando ese fichero y modificando los parámetros desde el back office, ahora me funciona siempre que se cierre el navegador, no basta con cerrar la pestaña. Link to comment Share on other sites More sharing options...
progger Posted January 8, 2015 Share Posted January 8, 2015 Pero es que no se que archivo hay que borrar y que es lo que hay que hacer exactamente, me puedes echar una mano? Un saludo.. Link to comment Share on other sites More sharing options...
CarlosZGZ Posted January 8, 2015 Share Posted January 8, 2015 (edited) Pero es que no se que archivo hay que borrar y que es lo que hay que hacer exactamente, me puedes echar una mano? Un saludo.. Hola, Te copio y pego la respesta de otros compañeros. 1. En el menú de Administración -> Preferencias ponemos la cookie del front office a 0. 2. Ahora, abrimos el archivo Cookie.php de la carpeta classes [prestashop/classes/Cookie.php] y en la línea 65 veremos el _expire así: $this->_expire = is_null($expire) ? time() + 1728000 : (int)$expire; Lo dejamos así: $this->_expire = is_null($expire) ? time() + 0 : (int)$expire; Tienes que irte a [prestashop/cache] y borrar el archivo class_index.php Es posible que tengas que cerrar el navegador, borrar el historial y caché, e incluso reiniciar el equipo. Te creas una cuenta de cliente de la tienda, te logueas, cierras el navegador totalmente, no sólo la pestaña donde está prestashop, vuelves a abrir el mismo navegador y debería aparecerte la opción LOGIN y no la LOG OUT. Edited January 8, 2015 by CarlosZGZ (see edit history) Link to comment Share on other sites More sharing options...
progger Posted January 9, 2015 Share Posted January 9, 2015 Ahora si, por fin... Muchisimas gracias por la ayuda... Un saludo 1 Link to comment Share on other sites More sharing options...
waldawalda Posted January 10, 2015 Author Share Posted January 10, 2015 Buenas a tod@s, al final ¿esto es o no suficiente para cumplir tan "brillante" ley?. Saludos Hola Enrique. La instrucción del despacho, tal como refleja la ley es "adoptar todas las medidas posibles para evitar la filtración de datos de un usuario". El argumento es que esta medida es "posible" dado que otras webs lo llevan a cabo (zara, corteingles...) donde un usuario que cierre el navegador evita que sus datos se filtren a otro en un ordenador público, salvo que por expreso deseo del mismo la sesión quede abierta (como pasa en gmail, hotmail, etc...) es decir, por acción del mismo. Algo parecido a lo que pasa con el consentimiento informado que hay que poner bajo la suscripción de las newsletters para cumplir con la LOPD. Totalmente de acuerdo de que es otra "brillante" ley SI alguien encuentra más información al respecto o puede aclarar este punto, estaría bien. Las leyes que rigen el comercio electrónico en España son algo ambiguas en su redacción y generan una inseguridad legal respecto a posibles interpretaciones que obligan a los abogados a ser muy cautos en sus indicaciones, entiendo yo. Yo aún no he conseguido que funcione, no se si por algún override, permiso de escritura, otro módulo o qué. He pedido ayuda a un programador para que revise mi configuración a ver si encontramos solución, incluso he clonado la web en otro hosting por si era la configuración del VPS y por ahora nada. Link to comment Share on other sites More sharing options...
waldawalda Posted January 10, 2015 Author Share Posted January 10, 2015 Buenas, entiendo lo de "adoptar todas las medidas posibles para evitar la filtración de datos de un usuario"... pero eso tiene un límite a parte de la interpretación que se le pueda dar. Si el usuario deja el navegador abierto por "despiste/ignorancia", ¿quién es el responsable a ojos de esta "brillante" ley?... Bueno, dejando de lado el tema de la ley. Con los pasos que te he dejado anteriormente lo puedes conseguir, como te decia en uno de los post. ¿No tendrás un override de la clase Cookie en la carpeta override?. Aparte, la pregunta del millón. ¿Es esto suficiente para cumplir dicha ley? Saludos Gracias. Voy a mirar esto de override, no tengo mucha experiencia. Según me indican, el despiste debemos preverlo. Es como lo de que debemos prever que entienda que usamos cookies o que ha entendido los términos del contrato antes de confirmar el pago. Debemos prever que el usuario puede tener una torpeza "pasiva"olvidando hacer algo antes de cerrar la página que deje sus datos personales visibles. Con este ajuste la tienda sería legalmente aceptable según ellos. Link to comment Share on other sites More sharing options...
waldawalda Posted January 10, 2015 Author Share Posted January 10, 2015 (edited) Hola a todos. Queria comentar que al fin me funciona! He probado la linea que apuntaba Sergio Ruiz change the setexpire to this public function setExpire($expire) { $this->_expire = 0; } Borrando el archivo de cache, como indica Enrique (limpiar cache incluyendo el archivo class_index.php de la carpeta cache) y esta ha sido la manera para mi. Por si a alguien no le funcionaba la otra solución. No entiendo muy bien el motivo, pero así es. Muchas gracias a todos. Edited October 1, 2015 by waldawalda (see edit history) 1 Link to comment Share on other sites More sharing options...
RobNegrete Posted August 18, 2015 Share Posted August 18, 2015 Hola, en mi caso después de hacer las dos modificaciones logré que funcionara para IE, FF. Sin embargo chrome está ignorando el cambio. ¿Hay alguna novedad con respecto a este tema? Muchas gracias. Link to comment Share on other sites More sharing options...
Moha28 Posted May 6, 2016 Share Posted May 6, 2016 BUENAS A mi me pasaba lo mismo conla version 1.6.1.5 y comprobé que era por la interferencia de un modulo en mi caso el "extra tabs" que afectaba a la página del producto, asi que por si acaso yo revisaria el ultimo modulo instalado antes de este erroro si algun modulo provoca dicho fallo Por si le sirve a alguien www.dieteticaonlinebarcelona.es Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now