Google
Web dns.bdat.net

Re: [PHP-ES] Controlar el acceso a un Form

From: Antonio Bueno Delgado ( bueno(EN)silver.udg.es)
Date: Tue Jun 22 2004 - 16:50:01 CEST


Buenaaas...

LL> Tengo un Form, Yo necesito que ese form solos ea usado desde mi pagina sitio
LL> WEB, no quiero que otro sitio haga referencia y use mi form, estoy usando la
LL> Variable HTTP_REFERER, sin embargo el HTTP_REFERER se puede enviar y po lo
LL> tanto mi form y CGI lo pueden utilizar desde otros sitio, no existe alguna
LL> forma de restringir el uso de mi form y CGI desde mi programa en php?

La función del "Referer" es hacer de "prueba" que el navegador viene
de una página (o un servidor) en concreto. Es cierto que se puede
falsificar, pero sólo desde el lado del cliente, así que nadie puede
hacer nada para llamar a tu formulario desde otra página sin que lo
detectes.

El problema es si, como pasa cada vez más frecuentemente, el cliente
NO envía el "referer" (cortafuegos, antivirus y cada vez más
navegadores lo hacen).

Para evitar este caso, puedes hacer que la página que lleve a tu
formulario pase una "prueba" que no sea el "referer" (por ejemplo un
MD5 de la IP más algo raro que sólo sepa tu script en el "query
string").

Para entrar en más detalles convendría que nos dijeras exactamente
contra qué te quieres proteger: ¿que lo usen sin pasar por la página
anterior? ¿que envíen datos sin validar?

-- 
Saludos,
Antonio
mailto:bueno(EN)bcds.udg.es
-- 
PHP Spanish Localization Talk Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


This archive was generated by hypermail 2.1.7 : Tue Sep 21 2004 - 21:34:42 CEST