私はファイルを処理しているPHPフォームを持っています。理想的には処理ファイルを保護する方法
<?php
$value = $_POST['string']; //Assume string is safe for database insertion
$result = mysql_query("INSERT into table values {$value}");
if($result) {
return true;
} else {
return false;
}
?>
としてコードでファイル名process.php
を言って、私のウェブサイトにログインしています唯一の誰かがその挿入を実行するために、そのPOSTリクエストを送信することを許可されなければなりません。しかし、ここでは、この処理ファイルのパスと送信されているリクエストを知っている人なら、(もし間違っていないならば)どんなドメインからでも偽のPOST要求を送ることができます。これにより、不要なデータがデータベースに挿入されます。
私がしたことは、挿入前に、ユーザーがログインしているかどうかを確認したことです。そうでなければ、私はPOSTリクエストを無視します。しかし、どのように私の処理ファイルを悪用から確実に保護するべきですか?