我是管理員,我需要刪除用戶。ASP.NET成員資格:安全用戶刪除
如果用戶在我刪除它的時刻進行了身份驗證,那麼強制刪除的用戶在下一個請求中註銷的最佳策略是什麼?
我必須在Application_AuthenticateRequest
事件中處理此操作嗎?
換句話說,可以在AuthenticateRequest
事件中驗證用戶是否仍然存在,如果不存在,則刪除所有Cookie並重定向到登錄頁面?
我是管理員,我需要刪除用戶。ASP.NET成員資格:安全用戶刪除
如果用戶在我刪除它的時刻進行了身份驗證,那麼強制刪除的用戶在下一個請求中註銷的最佳策略是什麼?
我必須在Application_AuthenticateRequest
事件中處理此操作嗎?
換句話說,可以在AuthenticateRequest
事件中驗證用戶是否仍然存在,如果不存在,則刪除所有Cookie並重定向到登錄頁面?
一些研究和評估後,終於我找到了一個戰略來處理這種情況,所以,在Global.asax中:
protected void Application_AuthenticateRequest()
{
var user = HttpContext.Current.User;
if (user != null)
{
if (Membership.GetUser(user.Identity.Name, true) == null)
{
CookieHelper.Clear();
Response.RedirectToRoute("Login");
}
}
}
當請求被認證時,驗證用戶仍然在存在系統,如果不是所有的cookies都會被刪除,請求將被重定向到登錄頁面。
如果你刪除它們,那麼我假設他們的下一個請求很可能會出錯。
即使他們具有身份驗證cookie,任何檢查數據庫與其用戶ID的頁面顯然都會引發異常。
你很可能只是禁用用戶而不必刪除它們。
好的。我一定要禁用用戶。但如何管理「刪除用戶場景」?可以在Application_AuthenticatedRequest事件中驗證用戶是否已經存在,是否刪除所有Cookie並重定向到登錄? – 2010-11-18 19:25:29
管理這種情況的最佳策略是什麼? – 2010-11-18 19:28:58
是的,如果應用程序在使用時被刪除,應用程序可能會誤報。在這種情況下,看到錯誤或登錄頁面有什麼區別;他們不再是一個用戶。 – Greg 2010-11-19 21:04:15