我爲我的web應用和iPhone應用使用公共API。我的應用程序將基本的CRUD操作執行到數據庫中。保護HTTP請求免遭篡改
作爲API的客戶端密鑰在HTTP請求報頭被髮送,這將是容易的惡意用戶轉儲該密鑰和篡改DATAS最初傳遞給請求(用篡改數據Firefox的插件例如)
所以,這裏是我的一個簡單的問題:什麼是最好的做法,從這個保護? 在將數據發送到數據庫之前,如何以編程方式檢測不同的作弊情況?
我爲我的web應用和iPhone應用使用公共API。我的應用程序將基本的CRUD操作執行到數據庫中。保護HTTP請求免遭篡改
作爲API的客戶端密鑰在HTTP請求報頭被髮送,這將是容易的惡意用戶轉儲該密鑰和篡改DATAS最初傳遞給請求(用篡改數據Firefox的插件例如)
所以,這裏是我的一個簡單的問題:什麼是最好的做法,從這個保護? 在將數據發送到數據庫之前,如何以編程方式檢測不同的作弊情況?
在HTTPS
而不是HTTP
服務您的webservice會阻止任何人嗅探您的密鑰。
SSL不會達到目的。 HTTP/HTTPS請求在發送到服務器之前可能會被篡改。最好的方法是在生成HTTP請求之前加密數據。
嗨thx爲您的答案。你知道一個解決方案是否存在於程序性的方式?如果沒有,是否有低成本的SSL證書? – Yaman
您可以使用自簽名證書配置您的服務器,無需支付任何費用。以編程方式查看您使用的api /庫來調用webservice支持進行HTTPS調用,如果它可以執行HTTP,那麼它也可能會執行HTTPS。 – Nelson
實際上,我使用的API似乎支持https。我會做一些篡改數據的測試,以防萬一:) Thx爲您提供幫助Nelson! – Yaman