2016-10-22 127 views
0

我的平臺使用AJAX與內部結構(API和其他)進行通信。所有AJAX請求被髮送到一個名爲globalAPI.php(POST方法)的文件,並且他在那裏與其他php文件進行通信(這是爲了隱藏內部結構)。拒絕外部訪問php文件

假設用戶發現它是如何工作的並從他的服務器開始請求。我們可以得出結論,即使沒有在我的平臺上登錄,它也會生成結果。

那麼如何保護這個文件到外部訪問?

我相信我可以用一個.htaccess文件,Allow from 127.0.0.1,但如果用戶更改自己的IP來127.0.0.1,他將有機會獲得這個文件?

有其他辦法保護這個文件嗎?

回答

3

如果你想限制他們的訪問,你應該在所有的API調用中實現一個認證系統。

基本上,您無法阻止用戶從Devtools打開網絡選項卡並查看您的客戶端對服務器API所做的請求:高級用戶可以看到每個請求發送的參數,並重新發送請求或不同的參數。

如果這個文件可以通過AJAX訪問,那麼客戶端無論如何都可以訪問它:你必須做的是確保用戶不能訪問比AJAX調用允許的更多的東西。爲此,請保護您的API,例如爲每次調用請求一個用戶令牌:服務器將知道哪個用戶訪問了API,並且您可以從該點處理授權。