2008-10-30 42 views
7

我們公司製造基於網絡的應用程序,每個工作站都定價。每個座位認證的SAAS

這意味着用戶/密碼憑證只能從一臺特定的機器上使用。

目前發生的情況是幾個用戶正在共享憑據,如果他們沒有同時執行此操作,我們沒有任何方法來阻止此操作。

應用程序的性質是這樣的,用戶需要一段時間使用它,所以無法併發工作不會打擾用戶太多,公司失去了可能的收入。

該應用程序目前純粹是沒有Flash/activeX/Java小程序的AJAX。

理想的解決方案是使用「Shell.Network」腳本界面以javascript讀取客戶端的計算機名稱或IP地址。

但是,這是不可能的,因爲Internet Explorer中的嚴格安全設置。我不得不提到跨瀏覽器功能並不重要,唯一支持的瀏覽器是IE。

搜索谷歌我在這裏遇到了這個解決方案http://www.reglos.de/myaddress/MyAddress.html,但它需要JAVA小程序,所以不會很方便。

有沒有其他解決方案呢?

回答

3

使用ID在機器上設置cookie。每次用戶登錄時檢索cookie。如果您看到幾個不同的cookie交替出現在單個用戶身上,那麼您知道自己有一些奇怪的事情發生。

(當然一臺交換機可能僅僅意味着他們已經移動到新的PC作爲一個關。)

另外,每次使用「查詢」或其他一些項目的價格。

+0

看來基於cookie的解決方案將是最好的。我們將試用 – SparcU 2008-11-02 14:25:38

0

因爲你的客戶(軟件)是有效匿名的,用戶是自我識別的,所以沒有簡單的答案。

對於IE「鎖定你」(我幾乎不是IE專家),但不能爲特定域設置IE設置?您可以簡單地要求用戶配置他們的瀏覽器來爲您的應用提供卓越的訪問權限。

我看不出有什麼理由不能對用戶瀏覽器有一定的要求(即只有IE 6/7/8,這些安全設置等)。

4

您的許可模式與交付模式不一致。改變其中之一。

+0

+1,因爲Web是無狀態的。很難跟蹤一個用戶。 – 2009-06-10 21:37:28

1

這種濫用可能可以使用RichH建議的Cookie技術適度有效地檢測到。至少明顯的濫用行爲很容易被發現(例如10個授權用戶,100個真實用戶)。

但是,當然,不要鎖定用戶,只監視情況並讓您的銷售人員調用建議他們購買更多許可證。

我們完全一樣(在許可和交付方面),並且我相信您沒有改變模型的良好商業理由。

1

跟蹤每個用戶的會話。不允許多個會話給單個用戶。要達到此目的,您必須將會話ID保存到數據庫中,並在每次用戶登錄時檢查。

要幫助有時會出現瀏覽器崩潰並重新登錄新會話的用戶,請允許他們註銷他們以前的會話...所以你可以殺死舊的會話,而是註冊新的會話。

希望這是有用的。