我目前正在開發一組PHP腳本,充當專用API,僅供某些授權機器使用。 腳本直接與MySQL數據庫接口,所以我必須確保沒有公共的未經授權的訪問(如使腳本成功運行)是可能的。保護PHP腳本免受未經授權的訪問
我一直在考慮不同的選擇,但我決定來這裏的一些不同的意見。
我在用nginx運行。
API由C#程序(使用WebClient)和其他一些服務器(可能會更改IP)在外部使用,所以我避免了基於IP的方法。
我正在考慮通過「鑰匙」參數通過後,檢查是否有匹配
if($_POST['key'] == 'key')
可能有更好的替代品,你做什麼覺得?
HTTP Basic Auth在語義上比'key' POST參數更正確。還可以使用HTTPS來防止MITM攻擊。最後,如果惡意方可以訪問C#應用程序,則所有投注都將關閉,因爲祕密可以簡單地進行反向設計。 – univerio