[英]Multiple membership providers in ASP.NET (web.config + sql)
我知道這個問題已經被問了很多,但是我相信我的情況是獨一無二的。
我們正在使用ASP.NET SqlMembershipProvider。 但是,我們還有一些安全性較差的內容,我們希望通過將用戶直接添加到web.config來確保安全性,例如...
<forms loginUrl="login.aspx" defaultUrl="default.aspx">
<credentials passwordFormat="Clear">
<user name="user1" password="123" />
<user name="user2" password="456" />
</credentials>
</forms>
是否可以將這種方法與SQL Membership Provider一起使用? 如果是這樣,怎么辦?
我知道這樣做是不好的做法。 這只是我們將網站的某些部分移至asp.net應用程序中的墊腳石。 我們希望其中一些密碼易於編輯,而無需進入數據庫。
我們希望其中一些密碼易於編輯,而無需進入數據庫。
我不理解的邏輯是什么。 為什么要在具有內置功能的情況下需要兩個,以便在成員資格提供程序中輕松更改密碼。
現在,您可以同時使用兩者,但是您將需要一種機制來決定何時使用什么,或者必須進行兩次身份驗證,即首先針對web.config驗證用戶,如果驗證失敗,然后針對成員資格DB驗證。
但是,如果您還有其他明確取決於會員資格的內容,那么其中某些內容將無法在您的網站上運行。
因此,身份驗證是的,可以根據需要進行驗證。
我在這里找到了答案: ASP.NET-web.config文件中帶有憑據的登錄控制
對於我的ValidateUser邏輯,我需要使用:
if (_provider.ValidateUser(username, password)) {
return true;
}
else {
return FormsAuthentication.Authenticate(username, password);
}
我知道如何使用提供程序進行身份驗證,但是關鍵是ELSE子句,並使用web.config憑據進行身份驗證。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.