ASP.NET MVC RememberMe
-
20-09-2019 - |
質問
で多かったのかからない回答したボタンをクリックしてください.以下に私を説明する私の問題です。というものでしてくださいね。についてご説明して私の問題に単純な言語です。
を展開しているが、asp.net mvcます。を使用してい標準ASP.NET 役割本格的に始動いたしました。すべては細かい作業が人の同意を得た機能が動作しない。私はすべての内容です。希望の皆さんが教えてくれるので助かりますの必要がありません。
私は単にこれが必要です:
いユーザーログインサポートも組み込まれています。期間中ログインでログインして下さいとなっています。ご利用いただくユーザでログインとイン情報を記憶させたいブラウザを覚えておきたい、ということか◎一年を大幅に。についてコメントしていまwww.dotnetspider.com,www.codeproject.com,www.daniweb.com その他多くのサイト。ご利用いただくユーザでログインせずに覚えていく、そのブラウザでアクセスを許可するwebサイトの一部で20-30分後にそのセッションは失効いたします。そのセッションは期限がユーザーでログインおよびシャットダウンするとブラウザにインインなしです。
注意:私は私の実施上記の機能を用いずに標準asp.net 役割は、会員が自由自在に打ち込みながら、talbesのためのユーザーを認証するときの自分にとってはデータベースのテーブル、クッキーの設定とセッションに私のプロジェクトだが、このプロジェクトを開始当初から使用基準asp.net 役割本格的に始動いたしました。のようなものかと思った仕事後でも構築時のテストするだけなかった。現代わりにはなりません、既存の標準機能asp.net 役割は、会員自身のカスタムユーザテーブルのすべてのものまで、ご理解の思taling。
のいずれかがあるようなバグは標準asp.net 役員の機能または私は全体コンセプトの基準asp.net 役割及び会員間違っています。申し述べたいと思いしたいと思います。う非常に簡単でリーズナブル。
かっけ
- ログインフォームとユーザー名、パスワードを記憶させます。
- 私の設定です。config:
<authentication mode="Forms">
<forms loginUrl="~/Account/LogOn" timeout="2880" />
</authentication> 私のコントローラーに行動しています:
FormsAuth.SignIn(ユーザー名、rememberMe);
public void SignIn(string userName,bool createPersistentCookie) { FormsAuthentication.SetAuthCookie(ユーザー名、createPersistentCookie);}
現在の問題にされてい
って上記課"までが必要。ユーザーでログインします。そのセッションが存在していることによって実現されてい指定のタイムアウト値。config.私はさまざまな取り組みが認められ、サンプルのweb.config.私のsamplem合のタイムアウトへ5分、そのユーザーセッション終了後5分、大丈夫。だがユーザーを閉じるとブラウザを再開し、ブラウザのユーザが入力しなく当サイトのログに赴任時に指定されたタイムアウト"になってきます。摺動期間満了のためのタイムアウト値です。現在ご利用いただくユーザはログインシステムのイン情報を記憶させ、ユーザーセッションが期間終了後5分です。これではいけない行動ですか?.いと言うことでご利用いただくユーザはログインシステムのイン情報を記憶させ確認するのが記憶に長い時間赴任していないシステムからログアウトしたユーザーさんは手動ですべて削除してのクッキーをブラウザです。ご利用いただくユーザでログインシステムになっェり自身のセッションは期限のタイムアウト期間値を指定します。configまた場合にユーザーを閉じるとブラウザです。問題はご利用いただくユーザを閉じるとブラウザおよびリニュれたものを入力しサインインなしです。
い検索インターネットについては何もなされていないこと、まくまとめることができなかっソリューションとなります。のブログポストhttp://weblogs.asp.net/scottgu/archive/2005/11/08/430011.aspx)によるスコット-グと同じです。のユーザーについて不服を申し立て同様のことをコメントutありません簡単に解決されさんスコット.
いただいていましたら以下の場所:http://weblogs.asp.net/scottgu/archive/2005/11/08/430011.aspx http://geekswithblogs.net/vivek/archive/2006/09/14/91191.aspx
この問題の多くのユーザーどうか、ブログをされましたスコットGu.
おんください。よろしくお願いします。
解決
したいことは違うタイムアウト時にRememberMeオプションをチェック時よりもチェックされません。残念ながら、SetAuthCookie方法はできませんセットの有効期限、手動でできています。
問題はそれでは、どのようにすれば、いか。
ASP.NET MVCはFormsAuthenticationクラスのシステム。ます。安いのではな場合はサポートもしたい設定の設定cookielessの閲覧およびSSLであると考えているだけだとい:
int timeout = rememberMe ? 525600 : 30; // Timeout in minutes, 525600 = 365 days.
var ticket = new FormsAuthenticationTicket(userName, rememberMe, timeout);
string encrypted = FormsAuthentication.Encrypt(ticket);
var cookie = new HttpCookie(FormsAuthentication.FormsCookieName, encrypted);
cookie.Expires = System.DateTime.Now.AddMinutes(timeout);// Not my line
cookie.HttpOnly = true; // cookie not available in javascript.
Response.Cookies.Add(cookie);
---あなただけの基本的な版で作られています。
注意:なかったの試験は行わない。
他のヒント
Kevin、Daveは、まだロックです。
Daveは、コードがあったのでついでにもう一つ付け加えラインです。なんでだめです。私は割り当てる値を問い合わせ満了のほか、コードです。このラインができます.の満了日が設定されていないは、クッキーを紛失した後、コンピュータを再起動しつつあることを意味するものでは末ます。気付いたのです。私のクッキーなどの見:ができます.の満了日が設定していない価値"を期間終了:"属性Firefoxは"末のセッション"ができます.の満了日を設定する値は"期間終了:"属性をFirefoxのdatetimeのクッキー.限値を設定しました。
こちらのコード:
int timeout = createPersistentCookie ? 525600 : 2; // Timeout in minutes,525600 = 365 days
var ticket = new FormsAuthenticationTicket(userName,createPersistentCookie,timeout);
string encrypted = FormsAuthentication.Encrypt(ticket);
var cookie = new HttpCookie(FormsAuthentication.FormsCookieName, encrypted);
cookie.Expires = System.DateTime.Now.AddMinutes(timeout);//My Line
HttpContext.Current.Response.Cookies.Add(cookie);
ん、たった。
からよくあるq&aの使用に関会員authチケットに共通の環境方にあることが課題です。私は、mvcサイトrunnigでgodaddyは、たく覚えています。これを解
<system.web>
<machineKey
validationKey="4C6404A3B305CD6E8CFEAC258F042FB95E45E9C3C2CEC3AAB838996CFBE661E41DF1A1BAC75B9B45E02147612FD9B71CA74DDA50B0D0D6ED11F0BB8E31048953"
decryptionKey="BC471CF17A97B08A9DF85C7B502AD95680E3BE4418FD9C6CEA57E7F97ED64291"
validation="SHA1" decryption="AES"
/>
協力:http://www.geekfreeq.com/aspnet-remember-me-option-forms-authentication-not-working/
な問題で特集)
ユーザのセッションな切れない場合もあり、再開のブラウザのクッキーのも良いです。
このクッキーの有効期限が無効のユーザに開催するセミナーシリーズです。
また同じことがい試験で動作にMozilaがインドにおいて入手できないIE8のためのすべてのpc上でも更新を受け付ける設定でクッキーの家もで使用すれば問題ありません。
Internet Explorer8です。x
- クリックし、ツールメニューです。
- 選択インターネットオプションメニューの-新しいウィンドウが開きます。
- クリックし、プライバシー"タブ内にあります。
- クリックし、デフォルトのボタンを押すとウインドウです。
- スライダーを移動しそのレベル以下に中高を含む中、低の受け入れ、すべてのクッキー).
- 変更を保存をクリックOKです。
- 対応することができるでしょう項目を追加するにはショッピングカートです。