簡體   English   中英

在ASP.NET MVC中從頁面到頁面傳遞敏感數據的最佳方法是什么?

[英]What is the best way to pass sensitive data from page to page in ASP.NET MVC?

我正在設計一個Web應用程序,該應用程序必須逐頁傳遞敏感信息(例如用戶的帳號),直到完成用戶操作(該應用程序就像向導一樣),以進行記錄。 什么是存儲此數據的最佳方法,以便過程中的每個頁面都可以訪問該數據? 我應該將其存儲在會話中嗎? 在數據庫中,然后將其刪除? 我還沒想到的某種方法?

我個人盡量避免使用會在可能的情況 這是我在處理向導類型方案時了解的選項:

選項1

使用Nadeem Afana博客中討論的JQuery。 這些頁面將一一顯示給用戶,但是直到最后一頁才提交信息。

選項2

每頁上的信息是否敏感? 是否可以進行結構化,以便僅在最后一頁上要求提供敏感信息? 如果是這樣,您可以按照Darin Dimitrovs答案中的討論在整個頁面上序列化數據,而不必在最后一頁上提供后退按鈕。 另外,可以使用相同的MVC Futures序列化軟件輕松地加密序列化的數據,盡管我不確定您的信息有多敏感以及是否要依靠它。 答案還提到了諸如Stepy之類的替代方案,但我對此沒有經驗。

選項3

如果信息敏感,則可以在兩次請求之間將信息寫入/讀取到數據庫中。

選項4

最后,如果您不能使用上面的任何方法,那么我將使用Session或TempData(這是圍繞該會話的包裝器),但是請注意,使用TempData時,如果用戶刷新頁面,則該信息將丟失。

會話對我來說聽起來不錯,它(幾乎)自動消失。
如果您偏執狂,則可以對其加密或將其存儲在其他位置並通過哈希找到它。 那么,這個“其他地方”就是您的下一個保存點了嗎?

只要確保它沒有到達Web客戶端即可。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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