[英]How to allow user to login only from the office?
我有一個具有簡單用戶/通行證授權的Web應用程序。 客戶希望只允許他的員工在辦公室使用它。
最好的方法是什么?
Web應用程序是用PHP,PostgreSQL編寫的
您想使用實際上是安全的東西,而不是限制通過IP的訪問。
通過HTTPS連接的用戶名和密碼至少應該是不可識別的,但是您可能希望查看客戶端SSL證書。 可以在Apache或其他Web服務器軟件中配置它們。 如果用戶名/密碼認證還不夠,這是下一步(也許是最后一步)。
更新:
也就是說,許多應用程序提供商將為訂戶提供一種為其帳戶實現ACL的方法。 您甚至可以強迫人們在允許他們訪問您的服務之前考慮他們的ACL。 這樣想:
在您的系統中設置了一個帳戶,可以從任何地方登錄。 創建后,ACL為UNSET。 用戶登錄並立即進入ACL設置頁面,在該頁面中,他們必須提供與其帳戶關聯的IP地址或范圍或子網。 您可以很聰明地用現有的IP地址或子網填充事物,甚至可以在ARIN上查找事物,以查看其IP是否在分配給其帳戶公司名稱的網絡中。 一旦設置了ACL(或者,盡管您發出警告,他們仍然確認他們希望保持ACL處於打開狀態),他們就可以訪問您的服務。 如果他們嘗試從其他地方登錄,則會通過電子郵件(或SMS或其他方式)向他們(和您)通知您嘗試違規。 如果他們再也無法訪問其ACL列出的IP(例如,由於新的上游Internet提供商和規划不當而導致IP重新編號),他們可以致電您的電話支持人員,他們將通過其他方式對其進行驗證。 確認傳真,因為這樣非常安全...
用戶管理的ACL並不是“放心”的方式,但它可能足以滿足您的需求,並且肯定會在您的客戶中灌輸一種感覺,即您將最大的利益放在心上。
我找到了一種簡單的方法來查看用戶是否已從辦公計算機登錄到Web應用程序:
手動在瀏覽器的配置參數 'user-agent'中添加一些字符串,並檢查$_SERVER['HTTP_USER_AGENT']
是否包含該字符串 。
例如“ Mozilla / 5.0(Windows NT 6.1; rv:27.0)Gecko / 20100101 Firefox / 27.0 OFFICE”
當然,這絕對不安全,但它可能適合客戶。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.