2009-04-17 59 views
0

我負責使用互聯網在各個站點之間傳輸數據的應用程序,而且有些客戶因爲付費而感到尷尬,所以我們需要一種機制,允許我們切斷非付款人的服務。我想防止管理員使用防火牆阻止我們的支票,但相反,我想給我們的公司網站一些津貼因某種原因消失,不能訪問。遠程啓動/停用並防止業務中斷

我想象的方案是:

server makes twice daily check to web page using a URL like: 
http://www.ourcompany.com/check.php?myID=GUID&Code=MyCode 

這則返回一個包含要麼什麼都不感興趣,或GUID和值的響應。

GUID=0 

零表示服務器應停止操作。爲了再次工作,服務器將每5分鐘檢查一次相同的信息,直到該值與它認爲它傳入的代碼應該轉換爲的值相匹配。

這個方案對我來說很有意義,但問題的確是如何防止阻塞。鑑於我們知道我們必須有互聯網接入,我們應該多久才能繼續運作,而無法從我們的網絡服務器獲得迴應?是14天左右,然後我們就把它關掉最好的方法?

回答

1

我最終使用的解決方案非常符合我的建議。是的,使用這裏列出的工具是可以勝任的,但它總比沒有好。

該應用程序每天檢查以訪問包含使用公鑰加密加密的控制文件的網站。它在內存中解密,如果它找到它的GUID,那麼它必須匹配一個代碼。要禁用該操作,代碼將設置爲0(零),這將始終失敗。禁用時,每隔兩分鐘檢查一次,以便快速恢復。還有一個手動機制來生成一個代碼,在出現服務器故障的情況下可以工作一週。

該代碼將允許長達14天,而不需要連接到服務器,然後將其作爲故意的嘗試來阻止它。 10天后,它顯示一條錯誤消息,要求他們聯繫支持人員。

0

這種方法很容易規避:只需使用本地dns服務器將www.ourcompany.com指向本地計算機或使用http代理即可。然後用戶可以將他們想要的任何響應返回給程序。

假設用戶沒有規避支票,多久沒有確認就繼續經營是商業決策,而不是編程決定。

+0

嗯,是的。好的,我們將使用公鑰加密文件,以便我們必須有良好的下載和解碼或「失敗」。商業或編程決定?也許,但是程序員需要解決這個問題。 – mj2008 2009-04-17 08:37:20

0

用戶可以使用諸如OWASP WebScarab之類的工具即時更改值以顛覆您的安全模型。你需要包括更難的東西,例如需要一個安全通道,比較公鑰等等。

相關問題