一般に、アクセスを提供する必要があり、HTTP は単純であるため、意味のある方法でこれを行うことはできません。または、より基本的には、提供する必要がある情報 (この場合はステートレスな接続情報) へのアクセスを拒否することはできません。最適な最初のステップは、簡単に改ざんされた要求情報に基づいて制限しようとするのではなく、(接続方法に関係なく) ユーザーがアクセスできるデータへのアクセスのみをコントローラーが許可するようにすることです。
そうは言っても、これを本当に追跡する奇妙な理由がある場合は、AJAX 要求で渡される何らかの形式の使い捨てトークンを使用できます。たとえば、ランダムなキーを生成し、それをどこかに永続化して (理想的にはハッシュ テーブルのようなもののメモリ内に保存するだけです。それ以外の場合に十分な遅延が発生することはないため)、ajax を発行するページでそれを渡すことができます。リクエスト。トークンはリクエストと共に返されて削除され、そのトークンは無効になります。コントローラーにはトークンが必要なため、直接アクセスすることはできません。
プロセスを停止して発行されたトークンを使用できるため、これはまだ回避できますが、curl で遊んでいるだけの人を思いとどまらせることになります (そのため、努力する価値はありません)。
簡単に言えば、誰もが 10 分以内に回避できないような方法でこれを行うことはできません。取得方法に関係なく、必要なデータのみを公開するように注意してください。