12

このチュートリアルに基づいて、フォーム認証を使用して ASP.Net 4.0 サイトのカスタム ID クラスを実装しています:
フォーム認証の構成と高度なトピック

追加のユーザー情報 (姓名、性別、地域、プロフィール写真のサムネイル ファイル名など) を AuthCookie に保存したいと考えています。msdn.microsoft.comには、UserData プロパティのサイズ制限に関する警告があります。

UserData プロパティの明確な文字制限を見つけることができませんでした。暗号化されたCookie全体が 4096 バイト未満であることのみ。

コードで想定すべき最大文字制限を知っている人はいますか? または、これらの頻繁に必要とされるユーザー情報の一部を保存する方法について、より良いアイデアをお持ちですか?

ありがとう

4

2 に答える 2

6

明示的な制限はありません。最大サイズは、ユーザー名の長さなどによって異なります。また、Cookie (または Cookie なしのチケットを使用している場合は URL) の最大サイズは、ブラウザによって異なります。

その種の情報をサーバー側 (セッションなど) に保存できます。おそらく、Cookie にある種のキー/ID を使用します。これを行う 1 つの方法は、カスタムを実装するProfileProviderことです。

FormsAuthentication Cookie で説明したようなアプリケーション固有の情報を保存することの欠点の 1 つは、アプリケーションを FormsAuthentication から他の認証方法 (WindowsAuthentication など) に切り替える必要がある場合に、再設計が必要になることです。

個人的には、認証に関連する情報と、場合によっては FormsAuthentication Cookie の承認に関連する情報のみを保存します

于 2011-09-08T07:34:39.280 に答える
0

これは、ブラウザの Cookie の最大長によって異なります。この記事が役立つ場合があります:ブラウザの Cookie 制限

また、この記事は、現在の認証チケットのサイズを確認するのにも役立ちます: Asp.Net Authentication Ticket Checking

于 2016-03-11T09:13:40.530 に答える