3

私は現在、ASP.NET MVC3 でカスタム メンバーシップ プロバイダーを実装しており、さまざまなサンプル実装の例を見てきました。プロバイダーFormsAuthentication.SetAuthCookie()のメソッドから呼び出されることはないようです。trueを返す場合ValidateUserに呼び出す関数で常に呼び出されるようです。これは通常、何らかの形式の認証ヘルパーです。ValidateUserValidateUser

私が理解していないのは、trueを返すSetAuthCookie()と呼び出されるようだということです。ValidateUserだから私の質問は、なぜそれを直接統合しないのですか?

4

1 に答える 1

2

これは、私が推測する懸念の分離のために行われます。

メンバーシップ プロバイダーの責任は、指定されたユーザー名とパスワードのペアが有効かどうかを検証することだけです。

FormsAuthentication.SetAuthCookie()メソッド タスクは、次の HTTP 要求に耐えられるように、その情報 (ユーザー自身が正常に認証されたもの) をシリアル化可能な形式 (Cookie または URL パラメーター) に変換することです。

認証情報を Cookie に保存することは、asp.net プラットフォームで最も一般的な方法です。

于 2012-11-19T15:35:58.983 に答える