如何保护Android-php连接?

时间:2012-01-24 09:00:54

标签: android

我正在构建一个Android应用程序,它必须将一些信息发送到我的mysql数据库。我试图实现的机制是基于JSON,php,Mysql组合。不幸的是,当涉及这些科目时,我不是老手。据我所知,php-Mysql连接始终是安全的 - 除了我之外没人能看到php脚本的来源,我在其中写了用户名和密码到我的数据库。现在是棘手的部分,我的PHP脚本位于Apache服务器上,它根本不受保护,因此任何人都可以触发它(甚至从桌面浏览器)。我该如何防止这种情况?如何安全地从我的Android设备触发我的PHP脚本? 感谢

4 个答案:

答案 0 :(得分:5)

  1. 使用SSL。这将加密设备和服务器之间的连接。
  2. 使用服务器上验证的设备的客户端ID /密钥。
  3. 如果您真的担心有人会修改您的应用以使用以下方式发送虚假来电:验证客户端证书(背驮式)。 (与Facebook Android库和谷歌移动库一样)。

答案 1 :(得分:4)

  1. 使用ssl,这将加密连接
  2. 在您的php页面上设置验证机制,您的Android应用程序将发送凭据
  3. 设置服务器端发送给应用程序的随机密码,并且他仅对当前会话有效,并且应用程序需要运行一个函数,该函数将生成对当前数字的正确答案并将其发送给服务器作为验证,例如,如果服务器发给我的引脚号:120,并且我的验证功能是+1我将发送服务器121的引脚号,但我建议使用更复杂的算法。

答案 2 :(得分:1)

Android设备与任何其他HTTP客户端(如浏览器)没有什么不同。您需要遵循将使用的相同机制来保护标准网页:

  • 要求登录页面。用户需要提供有效的用户名和密码才能获得访问权限。服务器返回一个会话,通常存储在cookie中。这个question将帮助您了解如何在Android上执行此操作。
  • 为了阻止某人拦截用户名和密码,登录应通过HTTPS
  • 完成

答案 3 :(得分:0)

最直观的方法是使用Https Connection对用户(用户名+密码)进行身份验证,有更好的安全身份验证类型,如OAuth,请参阅:http://code.google.com/p/oauth-signpost/