2012-10-23 50 views
1

我有一個接受敏感數據的控制器操作。RequireHttpsAttribute和加密的請求數據

public ActionResult TakeSensitiveData(SensitiveData data){ 
data.SaveSomewhere(); 
} 

爲確保數據的安全,我想確保使用HTTPS(SSLv3,TLS 1)進行請求。一個我認爲使用該方法的是在我的行動RequireHttpsAttribute:

[RequireHttps] 
public ActionResult TakeSensitiveData(SensitiveData data){ 
    data.SaveSomewhere(); 
} 

然而,在測試此我拉琴透露,該行動取得的HTTP請求302重定向到HTTPS。我的問題是這樣的:

如果我提出了302重定向到HTTPS的請求,我還沒有在重定向之前通過HTTP發送敏感數據?

+1

更糟的是:據我所知,你甚至不會在https請求中獲取數據。您的行動本應該是https。 –

回答

1

您需要將數據直接發佈到HTTPS。

注意:如果您有敏感數據,則必須在HTTPS頁面上輸入它。因此,回傳將是HTTPS(或者您會從Firefox發佈有關將HTTPS數據發佈到HTTP的令人討厭的警告)。