如果您配置了ASP.NET MVC 5站點沒有電子郵件確認,管理員如何執行密碼重置?ASP.NET MVC 5以管理員身份更改密碼,不需要電子郵件
我可以編寫一個控制檯應用程序來重置數據庫中的密碼,但這似乎效率低下。此外,舊的aspnet_Membership_ResetPassword
sproc在新的身份系統中沒有對應物。
如果您配置了ASP.NET MVC 5站點沒有電子郵件確認,管理員如何執行密碼重置?ASP.NET MVC 5以管理員身份更改密碼,不需要電子郵件
我可以編寫一個控制檯應用程序來重置數據庫中的密碼,但這似乎效率低下。此外,舊的aspnet_Membership_ResetPassword
sproc在新的身份系統中沒有對應物。
我不知道我明白你想達到什麼。您仍然必須以某種方式向用戶提供密碼,那麼您是否會通過電子郵件向他們發送生成的密碼而不是標準的「在電子郵件中鏈接到允許您選擇新密碼的頁面」方法?
另外,你是在談論具體重置一個用戶的密碼或重置所有用戶密碼。如果是後者,那麼一個控制檯應用程序就是要走的路。如果是前者,您可以簡單地向後端添加一個視圖,只有管理員可以訪問該後端,讓他們爲特定用戶執行此功能。
就生成一些隨機密碼而言,你自己在那裏,但一個簡單的網絡搜索應該有很多方法可供選擇。
對智者來說,儘管電子郵件確認方法是標準的理由。它提供了一種相對安全的方式,允許用戶在無法記住自己的密碼時重新獲得對其帳戶的訪問權限。但最重要的功能是,它強制用戶實際更改密碼,而使用隨機提供的密碼,用戶實際上是使用該密碼,而不是花時間在登錄後手動更改密碼 - 尤其是密碼管理員這些天。這意味着如果您通過電子郵件發送密碼,或者將其寫入粘貼或其他任何內容,您現在都有一個巨大的安全漏洞。
我正在專門討論一個系統管理員重置單個用戶的密碼。沒有郵件。 – 2015-02-24 23:47:19
您所要做的就是更新數據庫中的密碼字段(當然,在散列/加密之後)。沒有必要的存儲過濾器,你可以在C#中完成。你有什麼嘗試? – danludwig 2015-02-24 19:49:02
是的,我意識到我可以在C#中完成,但我的系統管理員不能。沒有寫他做哈希的工具,我沒有看到另一種選擇。 – 2015-02-24 19:52:40
您應該向MVC網站添加一項功能,以允許授權用戶(系統管理員)通過網頁執行此操作。 – danludwig 2015-02-24 19:53:59