12
に有効期限をスライド私は、次のコードを使用して独自の認証チケットを作成しています:ASP.NET認証はカスタムチケット
string formsCookieStr = string.Empty;
FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(
1, // version
username, // user name
DateTime.Now, // issue time
DateTime.Now.AddMinutes(30), // expires
false, // Persistence
userRoleData // user data
);
formsCookieStr = FormsAuthentication.Encrypt(ticket);
HttpCookie FormsCookie = new HttpCookie(FormsAuthentication.FormsCookieName, formsCookieStr);
HttpContext.Response.Cookies.Add(FormsCookie);
私は有効期限がスライディング期限切れになりたい - クライアントがリクエストを送信するたびに、有効期限は30分にリセットする必要があります。ただし、ユーザーが初めてログインするときにのみチケットを作成します。ASP.NETは自動的に有効期限をスライドさせますか、スライドの有効期限を実装するには「手動で」何かを行う必要がありますか?
ありがとうございました。しかし、確かにカスタムチケットを使用しないときのデフォルトはスライドの有効期限です。さもなければ、ユーザーは最後のリクエストの現在の状態に関係なくログアウトされますか?私はこの振る舞いを観察しておらず、文書ではスライドの有効期限がデフォルトであると言います。カスタムチケットでデフォルトでスライド有効期限が切れていますか? (私はweb.configにslidingExpirationの設定がありません) – Journeyman
"有効期限が切れる方法は、各リクエストでASP.NETエンジンがタイムアウトをインクリメントして認証Cookieを書き換えるというものです。" ... ASP.netは書き直すだけなのでタイムアウト値の半分以上が経過した場合は、認証チケット。 http://weblogs.asp.net/rajbk/archive/2004/10/11/241080.aspx – BrazenTongue
@BrazenTongue - リンクは2017年2月現在で死んでいますが、代替品を提供することは可能でしょうか? – user3256944