您好,C#存儲信息
我工作在C#中的服務器程序,但我碰到的一個問題。當用戶連接,他的帳戶被認證等等。這一切都很好。
但問題是,服務器將不得不執行大量的查詢和功能與連接的用戶的用戶名,密碼等作爲參數。如果我只有1個客戶端,這不會成爲問題,但多線程和多個連接使這是一項艱鉅的任務。
目前,我有幾個功能,我有這樣的呼籲:(主要是出於安全原因)
functionName(action, value, username, password)
這似乎只是矯枉過正我,因爲我有可能使用此功能5-6次在一個1字符串。
我想我只是尋找一種好方法來存儲多個連接用戶的信息,而不需要線程混合信息。
謝謝你的時間。
目前我在做什麼:
就像我以前說過,在這一刻,客戶端始終將自己的用戶名和加密密碼的服務器。並且用戶名和密碼將始終作爲大多數方法的參數添加,因此我可以檢查數據庫以查看數據是否正確。
它使代碼看起來非常複雜。
編輯:
目前用戶將登錄使用他的用戶名和密碼。然後,我加密信息並以包的形式發送它。
服務器解密信息並檢查數據庫中的用戶名和密碼。
之後,我創建GUID並將其發送回客戶端,以便它可以保存該ID並將其添加到每個後續數據包中。
現在我該如何(服務器端)檢查來自客戶端的數據包中的GUID是否是合法的服務器端? - 我只是暫時將GUID存儲在數據庫中?
我還會補充說,他應該在固定的閒置時間和用戶註銷後過期令牌。出於安全目的... – 2010-11-25 11:19:02
非常感謝,聽起來像個好主意。只是想知道,我將如何存儲這個GUID,而不會被下一個用戶的GUID覆蓋呢? - 我只是將它作爲臨時值存儲在數據庫中? – Nick 2010-11-25 11:37:12