簡體   English   中英

ASP.NET(web.config + sql)中的多個成員資格提供程序

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM