0

ID やパスワード (外部 wcf サービスへのログ記録) などの追加フィールドが必要なため、カスタム IPrincipal を使用しています。Application_PostAuthenticateRequest イベントでプリンシパルを設定していますが、リクエストごとに行う必要があります。どこかにキャッシュしたいのですが、最適な解決策は何ですか? セッションは利用できません。パスワードがあるので、暗号化されていても FormsAuthenticationTicket を使用したくありません。HttpContext.Current.Items は、1 つの要求に対してのみ値を格納します。オブジェクト Application および Cache は、各ユーザーが使用できます。他の可能性は何ですか?

4

1 に答える 1

1

おそらく無制限の量のカスタム情報を保存するための最良のオプションは、Cookie です。ただし、フォーム Cookie のサイズには制限があり、サイズを超えるとインフラストラクチャが機能しなくなることに注意してください。

可能なアプローチの 1 つは、SessionAuthenticationModule. フォーム認証を使用している場合に、このモジュールにシームレスに切り替える方法についてブログに書いています。

http://netpl.blogspot.com/2012/09/forms-authentication-revisited.html

http://netpl.blogspot.com/2012/09/sessionauthenticationmodule-and-dynamic.html

于 2012-10-30T09:36:50.603 に答える