そのため、フォームをもう少し安全にし、CSRF 攻撃を防ぐのに役立つ可能性があるため、非表示フィールドにランダムなトークン値を追加し、その値がサーバー側のセッション データにも保存されるようにしたいと考えています。
新しいトークンはいつ発行する必要がありますか? 実行?フォームがあるページの読み込みごとに? セッションごと?フォームが正常に送信されるとすぐに無効にすることができますが、いつフォームを生成するのか疑問に思っています。
フォームごとまたはページごとに発行する場合、ユーザーが別のウィンドウを開いて最初のフォームを送信した場合に、重複したトークン値が既存の (有効な) トークンを上書きする可能性はありませんか?