gpt4 book ai didi

java - 什么是安全的 java applet 通信方式 -> MySQL

转载 作者:行者123 更新时间:2023-11-29 05:30:44 25 4
gpt4 key购买 nike

我正在制作一个在网页上运行的小型 Java 游戏。现在,我正在尝试让我的游戏与 MySQL 数据库进行通信,并且它现在是通过 PHP 进行的。

下面是发生的事情:

  1. 有基本的登录系统,可以在登录时设置 session (PHP)。
  2. 当 java 游戏从数据库中请求数据时,它会将 POST (URLConnection) 发送到 PHP 页面。
  3. PHP 页面检查 session 是否已设置,如果已设置,它会从数据库中回显需要的信息。
  4. Java 游戏使用 PHP 页面输出。

像梦一样工作和运行!

我唯一担心的是我实际上必须通过同一个周期更改更多数据并将其存储到数据库中。所以如果你有你的 session 运行,你基本上可以做漂亮的 HTML 表单并为你的角色设置更好的武器。

我尝试用谷歌搜索与数据库通信的基本方法以及服务器如何安全工作的基本理论。没有简单的答案。

很快我的问题是,

Java 应用程序和数据库之间进行通信(读取和写入)的安全正确方式是什么?

future 对 android 应用程序等也做同样的事情。如果你能给我一个正确的方向,我很高兴。

谢谢!

最佳答案

没有。如果有任何客户端可以从外部直接向服务器发出任意 SQL 查询的方式,那么实际上没有任何保护措施可以阻止任何人对他们想要的数据库进行任何操作,包括 SELECT * FROM 用户DROP TABLE 用户

您总是希望在外部世界和您的服务器组件之间有一个API,它定义明确允许的操作并阻止任何其他操作。允许任意 SQL 查询基本上是一种 API,允许不受限制地访问数据库中的所有内容,这通常过于宽泛。

您通常执行此操作的方法是定义客户端可以执行的一些操作,并通过 API(比如 REST API)公开它们。 Java 客户端与此 API 对话,服务器幕后发生的任何事情都无关紧要。这不是关于“与数据库对话”,而是关于在服务器上做某些事情。这些东西的数量是而且应该是有限的。

关于java - 什么是安全的 java applet 通信方式 -> MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15095715/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com