データを送信するのに、利用者認証を求め制限時間のあるウェブページ
これは、次の達成基準に関連する実装方法である:
利用者に認証を求めるウェブサーバは、一定時間、利用者の操作がない場合、セッションを終了することがよくある。利用者が素早くデータを入力できず、送信前にセッションが時間切れになってしまった場合、プロセスの続行前にサーバから再認証が求められるだろう。この場合、サーバはフォームからの情報(隠しデータ)を再認証ページに受け渡す。その後、利用者が再認証したら、フォームデータを直接送信するか、確認データを含んだページを表示するために、サーバは再認証ページから受け渡された情報を利用する。この実装方法では、サーバは利用者が送信したデータを保存しておかなくてもよい。この実装方法が重要なのは、サーバに一時的に情報を保存することが、違法性やセキュリティリスクに関わるケースである。また、サーバが記録した情報を保持しつづけたり、新しく認証したセッションでその情報に再接続する必要性から解放する点でも有用である。
注記:ユーザから送信されたデータが機密情報であったり、セキュリティリスクの疑いがある場合、データを再認証ページに受け渡したり、再認証後、データ保護を保証するために元のデータを処理してページに受け渡すプロセスを、コンテンツ制作者は見直すべきである。
あるWikiに利用者がログインし、ページの編集を始めた。編集の完了にかかる時間は、サーバから許可されている不操作セッション時間よりも長いとする。利用者が編集データを送信したが、セッションの時間切れが通知され、ログインページにリダイレクトされた。フォーム送信を処理するスクリプトは、ログインページに元の編集データを変数として受け渡す。利用者のログインが成功すれば、編集画面に戻ることができ、まるでセッションの時間切れがなかったかのようにスクリプトが編集データを処理する。
セキュリティが保護されたショッピングサイトに利用者がログインし、注文フォームに情報を入力している。セキュリティ上の理由から、セッションは30分後に時間切れとなるが、その利用者はページを読み込んでから45分経ってもまだフォームデータを送信していない。利用者には時間切れが通知され、再ログインが促された。利用者が正しくログインできれば、以前に入力したデータが全て残った注文フォームが表示され、内容を確認し、送信できる。ログインが成功しなければ、サーバによってフォームデータが破棄される。
データの送信にあたって利用者にログインを求めるサイトについて:
ログインし、時間制限のある操作を始める。
セッションを時間切れにさせる。
データを送信する。
再認証する。
再認証後に元のデータや変更内容が保持された状態で、その後のプロセスが継続可能で、データの欠落なく完了できる。
ステップ 3.で送信した情報を保存するために用いた途中経過のデータが、サーバに残っていないことを確認する(注記:この手法を実行するための技術や機能の知識が必要である)。
5. 及び 6. を満たしている。
注意: この実装方法が「達成基準を満たすことのできる実装方法」の一つである場合、このチェックポイントや判定基準を満たしていなければ、それはこの実装方法が正しく用いられていないことを意味するが、必ずしも達成基準を満たしていないことにはならない。場合によっては、別の実装方法によってその達成基準が満たされていることもありうる。
日本語訳における注記:
この文書の正式版は、W3Cサイトで公開されている英語の文書であり、この日本語訳には誤訳が含まれていることもありえます。なお、文中にある「日本語訳における注記」は、W3Cの原文にはないものであり、日本語訳監修者が追記したものです。