Evitar acceso directo a script

Jaime C
15 de Junio del 2011
Hola a todos,

Hay una duda que tengo desde hace bastante tiempo. Tenemos por ejemplo un script en php que inserta una puntuacion en un ranking de puntuaciones. Desde otro formulario llamo al script para insertar la puntuacion que ha obtenido el usuario. Como se evita que alguien pueda acceder directamente al script e introducir la puntuacion que quiera?
Evidentemente no usaremos REST para enviar los datos pero aun asi es posible llamar al script con POST.

Posibles soluciones son:
1º Usar una variable php que solo conozcamos. Al entrar en el script comprueba si esta definida la variable y si no es asi no inserto. (Si el usuario conoce la variable sigue podiendo acceder al script desde fuera falseando la informacion?)

2º Hacer uso del fichero .htaccess en apache para evitar accesso directo (puede dar problemas si el usuario esta detras de un proxy)

3º alguna otra opcion?

¿Cual es segun vuestro criterio la forma mejor forma de evitar que alguien pueda acceder directamente a un script php?