2013-05-03 136 views
1

開始學習Python的Flask網絡應用程序框架,仍在學習曲線中,所以請耐心等待。Flask客戶端會話

我在想安全的Web應用程序的客戶端會話有多合適。從它似乎有一些嚴重的問題:

  • 因爲所有的會話變量被序列化並在cookie中應該小心他們店裏有多少數據進行編碼,以保持HTTP數據的大小來回合理的尺寸。
  • 我不確定相同的鍵/值集是否具有相同的序列化值,但是如果我要在一個會話中獲取並存儲cookie值,我不能在同一個會話中提供相同的值(儘管已加密)在另一次,並使服務器相信這些是真正的會話變量值?一天內允許用戶做什麼並不意味着另一天就可以有同樣的事情。如果這些會話變量值必須始終保證安全,那麼將它們保存在「緩存」中有什麼好處呢?然後,他們起不了什麼更多的目的不是讓我們用漂亮的GET的URL(即,而不是醜陋的查詢字符串某些參數)

所以,也許我要尋找的答案,是瓶客戶端的限制會話,考慮可能的中間人攻擊(當然是用於非安全http會話)或高級惡意用戶,他們存儲cookie值以便在稍後時間將其中繼。

回答

1
  • 我不認爲你不必擔心大小,因爲無論如何cookie不能存儲超過4KB的數據。我非常懷疑你會輕而易舉地接近任何地方。

  • 它與其他會話一樣安全,因爲您可以將其他瀏覽器的cookie作爲其他瀏覽器並使其正常工作,就像您可以這樣做一樣。沒有什麼阻止它。但是,有一些解決方法可以解決此問題,您可以在時間限制後使其過期。例如,請參閱this question。它對這個問題有有用的答案。

如果您願意,您可以隨時使用database session。我確信還有其他的實現可以找到。

編輯:Here是其他一些。

+0

謝謝,你的意見讓我看着正確的方向。 – Passiday 2013-05-03 21:39:18