3

シナリオは次のとおりです。

  1. ユーザーが Web サイト #1 にログインします。認証されると、サイトはユーザーに関するいくつかの資格情報を収集し (この質問とは関係のない別のプロセス)、この情報を Web サイト #2 のページに投稿します。
  2. Web サイト #2 は FormsAuthentication によって保護されており、ユーザーをログイン ページにリダイレクトします。
  3. この時点で、Web サイト #1 によって投稿された値は失われます。

質問:

Web サイト #2 での認証/ログイン プロセス中に Web サイト #1 から投稿された値を保持するにはどうすればよいですか。

私たちが試したこと:

  1. Global.asmx の Session_Start メソッドにコードを挿入しようとしました。セッションに値を保存したかったのですが、ユーザーがログイン ページにリダイレクトされたときにのみセッションが開始されます (ブレークポイントに到達)。この時までに、私たちはすでに価値を失っています。
  2. Application_BeginRequest にコードを入れてみましたが、そのメソッドからセッションにアクセスできません。

データの長さがクエリ文字列に入れるには長すぎるため、GET ではなく POST を使用する必要があります。Cookie に値を保存できないのと同じ理由です。

4

1 に答える 1

0

手順全体で何か (GUID などの何らかの任意のセッション識別子) を追跡できますか? 手順 3 に到達するまで、収集した資格情報をデータベースに保存し、ログイン時に記録を破棄することを検討します。

于 2013-01-30T23:33:22.927 に答える