1

我知道這個問題已經有很多問題了,但我相信我的情況是獨一無二的。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成員資格提供?如果是這樣,怎麼樣?

我知道這是不好的做法。這只是我們將網站的某些部分移到asp.net應用程序中的一塊踏腳石。我們希望這些密碼中的一部分可以輕鬆編輯,而無需訪問數據庫。

回答

0

我發現我的答案在這裏:ASP.NET - Login Control with Credentials in web.config file

對於我的ValidateUser邏輯,我需要使用:

if (_provider.ValidateUser(username, password)) { 
    return true; 
} 
else { 
    return FormsAuthentication.Authenticate(username, password); 
} 

我知道如何使用提供者進行身份驗證,但關鍵是ELSE條款,並使用web.config憑據進行身份驗證。

0

我們希望其中的一些密碼 可以很輕鬆的編輯,而不去 數據庫。

什麼是我不明白的邏輯。爲什麼你需要其中兩個,而你有內置功能可以在會員提供商中輕鬆更改密碼。

現在,您可以一次使用兩者,但您需要機制來決定何時使用什麼,或者您必須進行兩次身份驗證,即首先根據web.config驗證用戶,如果失敗,則根據成員資格數據庫進行驗證。

但是,如果您有其他東西明確取決於成員資格,那麼其中一些東西不會在您的網站上工作。

因此,身份驗證,它是可行的,因爲你想。

+0

我還不確定*如何*做到這一點。 – 2011-04-04 14:04:15

相關問題