我有一個asp.NET框架4網頁表單的網站,用戶登錄功能等等...進出口使用Visual Studio 2010中SQL存儲過程自動運行
每個用戶都有3次登錄嘗試一次登錄嘗試已經通過3,他們的帳戶被鎖定。解鎖這些帳戶的唯一方法是通過管理面板。
但是需要的是將所有的登錄嘗試每一天零存儲過程或觸發器。這樣的登錄嘗試不會累積,只是一個每日櫃檯。
這將如何完成?
我有一個asp.NET框架4網頁表單的網站,用戶登錄功能等等...進出口使用Visual Studio 2010中SQL存儲過程自動運行
每個用戶都有3次登錄嘗試一次登錄嘗試已經通過3,他們的帳戶被鎖定。解鎖這些帳戶的唯一方法是通過管理面板。
但是需要的是將所有的登錄嘗試每一天零存儲過程或觸發器。這樣的登錄嘗試不會累積,只是一個每日櫃檯。
這將如何完成?
可以使用SQL Server代理來安排工作。
http://msdn.microsoft.com/en-us/library/ms189089.aspx
添加的步驟,只是設置的登錄嘗試字段設置爲0爲每個用戶,並安排其每天運行。
如果存儲的登錄嘗試計數任何表中的每個用戶,那麼你可以創建一個每天運行一個作業,並嘗試計數爲0,爲每個用戶。
如果你不知道如何創造就業,那麼請參考以下鏈接的想法:
對不起,我沒有讓自己清楚!我將如何讓SQL程序每天運行一次? –
您不需要創建任何過程。只需按照鏈接中提到的步驟創建一份工作即可。只需更改像UPDATE Authentication SET attemptCount = 0這樣的命令,並且每天都安排它。 –
如果你在你的SQL Server的控制,那麼看看運行SQL Agent Job或編寫Windows服務。
如果你是外包給Azure中,你可以用你的存儲過程在服務調用和使用Task Scheduler Service。
至於其他的答案說,你可以創建SQL Server代理工作,並讓它每天執行一次。
不過,我一般不相信這種解決方案 - 如果由於某種原因,代理作業失敗,你可能最終會鎖定人出了申請,並永遠不會知道它。
我建議你存儲嘗試在「login_attempts」表,帶有時間戳,寫你的查詢來篩選出24小時之前嘗試。
你有沒有在任何表中存儲登錄嘗試? –
登錄嘗試存儲在每個用戶身份驗證表 –