Foros del Web » Programando para Internet » PHP »

hacer que mi script solo reconosca POST de mi dominio

Estas en el tema de hacer que mi script solo reconosca POST de mi dominio en el foro de PHP en Foros del Web. Hola tengo una web http://www.dominio.com/envio.php en esta web hay un formulario que llama a otra web: http://www.dominio2.com/recojerdatos.php ¿como podria hacer para el script que tengo ...
  #1 (permalink)  
Antiguo 13/01/2006, 10:05
 
Fecha de Ingreso: febrero-2003
Mensajes: 753
Antigüedad: 14 años, 10 meses
Puntos: 2
hacer que mi script solo reconosca POST de mi dominio

Hola tengo una web http://www.dominio.com/envio.php en esta web hay un formulario que llama a otra web: http://www.dominio2.com/recojerdatos.php

¿como podria hacer para el script que tengo en recojerdatos.php solo se ejecute cuando sea llamado por POST atravez de http://www.dominio.com/envio.php y no desde otra web que intente hacerme algo malo? y que cuando ponga en el explorador http://www.dominio2.com/recojerdatos.php sin venir de mi formulario tambien de error?

saludos
  #2 (permalink)  
Antiguo 13/01/2006, 11:10
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 12 años, 9 meses
Puntos: 17
Podés usar las variables predefinidas especialmente $_SERVER['HTTP_REFERER'], pero no es totalmente seguro

Cita:
La dirección de la página (si la hay) la cual refirió al agente de usuario a la página actual. Este valor es definido por el agente de usuario. No todos los agentes de usuario lo definen, y algunos proveen la capacidad de modificar HTTP_REFERER como una característica del software. En resumen, no se puede confiar realmente en este valor.
Por otro lado, también puedes utilizar variables de session para confirmar que haya pasado por la página anterior, sin embargo no creo que con eso puedas confirmar si de allí envió el formulario...
  #3 (permalink)  
Antiguo 13/01/2006, 12:27
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
El problema de usar sesiones sería que "saltas" de domino .. (las sesiones sólo son válidas para un domino).

El problema de usar "HTTP_REFERER" ya se ha comentado.

Necesitas en este caso de un sitio centralizado y que puedas acceder desde varios dominos para hacer alguna comprobación.

Sería por ejemplo útil una Base de datos, .. pero que la puedas acceder remota desde otros dominos (no sólo conexiones "locales"). Así de esta forma, .. al usar enviar.php de domino1 .. creas un dato en tu BD y en recibe.php de domino2 .. revisas si ese dato existe. Entre enviar.php a recibe.php le passas por el URL dicho dato verificador y ese será el que revies
en tu BD si existe.

El proceso sería:

1) envia.php . .generas un registro en tus BD con el dato "298347898iasdfkjhdsf"

2) generas tu llamada a recibe.php con el dato progado (en el URL .. o en un campo hidden)
recibe.php?verificacion=298347898iasdfkjhdsf

3) en recibe.php .. haces una consulta SQL a tu BD por ese "verificacion" .. si no existe es que adulteraron el código deliveradamente o ya no existe (por qué ya se usó).

4) al terminar el proceso de recibe.php . .eliminas esa entrada en tus BD.

-------------------

También podrías usar otros métodos, como por ejemplo encriptar un dato que sepa domino1 y domino2 .. encriptas en envia.php del domino1 y desencriptas/validas en recibe.php de domino2

Un saludo,
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 00:21.