1
我試圖獲得一個持久連接,所以用戶只需要使用一次他們的密碼。我使用過這個文檔:https://docs.microsoft.com/en-us/aspnet/core/security/authentication/cookie?tabs=aspnetcore2x,但用戶在一段時間後仍然斷開連接。Asp.net核心持久身份驗證 - 自定義Cookie身份驗證
await HttpContext.SignInAsync(
CookieAuthenticationDefaults.AuthenticationScheme,
principal,
new AuthenticationProperties
{
IsPersistent = true
});
我該怎麼做才能獲得真正持久的連接?
設置,好吧,我想試試。只是一件事,文檔說:ExpiresUtc和IsPersistent屬性是相互排斥的。這不就是說我不能同時使用兩者嗎? – GlobalFx
@GlobalFx因此即使用戶沒有關閉瀏覽器,絕對到期(通過ExpiresUtc)也會拒絕設置的cookie。 _IsPersistent_表示用戶的身份驗證生命週期由CookieAuthenticationOptions決定。 設置isPersistent爲false意味着用戶只能通過當前瀏覽會話的身份驗證,瀏覽器關閉時會被清除。 –
好的,所以解決方法是將_IsPersistent_設置爲true並將_ExpireTimeSpan_設置爲_ConfigureServices_中的一年,而不設置_ExpiresUtc_。用戶只需要每年登錄一次吧? – GlobalFx