[英]How to prevent user to connect from un-authorized device to my web app?
嗨,我需要采取一些措施來防止用戶從未經授權的另一台計算機或移動設備連接到Web應用程序,例如,如果用戶正確輸入了用戶名和密碼,並且公司授權的計算機或移動設備授予了訪問權限,但是如果用戶在另一台計算機或移動設備上,則必須拒絕登錄Web應用程序。
用戶也可以在任何地方連接到Internet並使用此Web應用程序,但前提是使用授權設備進行操作。
我曾考慮過使用mac地址來完成此操作,但我不知道這是否是正確的方法。
所以有人有什么建議嗎?
編輯:此Web應用程序是公司內部的應用程序,可以訪問公司的銷售和庫存,因此公司提供的唯一設備可以訪問Web應用程序。
MAC地址是一個糟糕的選擇,因為偽造它非常簡單(除了很難通過javascript獲取它)。 由於您依賴用戶控制的內容來告訴您該設備已獲得授權,因此幾乎所有方案都將遇到該問題。 Cookies,甚至是“隨機”餅干,也存在相同的偽造問題。
設備如何獲得授權? 它需要多安全? 為什么必須將訪問限制為僅授權設備?
我在這里看到2種可能性:
真正安全的實現可能會利用公鑰加密和來自授權設備的某種簽名。 甚至可以偽造該簽名,尤其是對於基於瀏覽器的解決方案而言,這就是為什么如此多的公司對受信任的平台模塊感興趣的原因。
如果無法訪問Java插件,本機編程,活動X等,則無法直接獲取設備的MAC地址。
這樣做的通常方法(閱讀Facebook會檢測到您之前未從某個位置登錄過),以便在經過授權的設備上設置Cookie。 將這些cookie的列表存儲在服務器上,並檢查以確保在用戶嘗試使用設備時獲得正確的cookie。 Cookie應該是隨機的,發生碰撞的可能性很小。 您甚至可能會幻想每次用戶使用新值登錄時更新cookie。 基本上,您要查找的內容與“記住我”登錄系統完全相同。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.