AS3和MySQL服务器之间的通信

时间:2008-12-02 20:34:35

标签: mysql actionscript-3

我正在开发一个用Flash AS3编码的游戏,需要读/写一个SQL服务器的信息。 目前,出于测试目的,我使用ASQL非常简单和健壮,但它需要从客户端计算机到SQL服务器的直接连接(端口3306打开并允许使用密码从任何地方连接通配符用户名)更糟糕的是,.swf格式本身没有加密,所有反编译器都可以让你提取AS3代码,这意味着密码存储在代码中。

我已经收集了一些选项,但他们都缺乏安全措施:

  1. AS3代码将POST请求发送到连接到MySQL服务器的PHP页面
  2. 使用amfphp,但AMF协议仍然可以嗅探
  3. 保持当前方法并强制用户打开传出端口3306,这可能会使客户感到困惑。
  4. 帮助/提示/讨论将受到高度赞赏。

2 个答案:

答案 0 :(得分:1)

您可以使用HTTP(S)进行身份验证,例如PHP。不要让脚本成为SQL连接的包装器,因为这会破坏脚本的意义(基本上);将自定义命令作为协议(例如,添加/更新高分)。

答案 1 :(得分:0)

根据所需的命令数量,我认为你应该选择选项1(只有一个或几个命令)或选项2(如果你有一些更复杂的命令要发送)。不要将数据库打开到公共互联网。

您尝试解决/保护的问题是什么?如果您的所有应用程序(游戏)逻辑都在客户端,则无法阻止人们伪造结果。永远不会信任客户端,并且不保护线路(https或通信的任何其他加密)将有助于此 - 这只会阻止其他人窃听。

如果您正在尝试确保高分或游戏状态的发布 - 据我所知,您可以很难伪造它们,但除非您将至少一些游戏逻辑移动到服务器,否则您无法使其成为可能。