4
我使用默認值爲我的網站使用ASP.NET MVC 3成員資格。因此用戶的會員密碼被安全地存儲。如何使用ASP.NET Membership安全地存儲服務密碼?
我的服務要求用戶輸入其使用的其他網絡服務的用戶名/密碼。我從我的服務中訪問這些服務。如果我保存用戶的服務密碼,我需要確保那些用戶名/密碼的安全存儲,以便如果有人攻擊我的服務器,他們將不會被暴露。
我瞭解如何完成這項工作的一般概念(使用他們提供的ASP.NET會員密碼的密鑰對用戶名/密碼進行加密)。但我不知道具體的API或正確的模式。
我也認爲這基本上是不可能的,因爲如果有人攻擊我的服務,他們可以簡單地使用散列本身來解密密碼。我說得對嗎?
假設我錯了,並且可以做我想做什麼,我的假設模型包含了這樣的事情:
public class MSExchangeSettings
{
[Required]
[DataType(DataType.EmailAddress)]
[Display(Name = "Email address for your Exchange account")]
public string EmailAddress { get; set; }
[Required]
[DataType(DataType.Password)]
[Display(Name = "Password for your Exchange account")]
public string Password { get; set; }
...
}
是否有人可以提供如何正確地做到這一點的例子嗎?
如果這是不可能的,我不得不求助於每一次我想避免的PW用戶。當然,對於使用支持OpenID或OAuth的服務,我還有其他選擇,但對於此特定示例(Exchange),我需要用戶名/密碼。
我很欣賞你把這個發佈的時間。不過,我並不想簡單地輸入密碼。正如我上面所解釋的,我需要在我的服務中使用未經哈希處理的密碼,以便我可以使用其他服務進行身份驗證,例如Exchange。不過謝謝。 – tig