我想使用Java和MySQL创建客户端数据库应用程序。据我所知,Java可以反编译并直接从客户端使用MySQL,数据库凭证将被公开。
如何使用MySQL服务器创建Java客户端,而用户无法确定我的数据库凭据?
答案 0 :(得分:1)
如果要创建Web应用程序,则可以在服务器配置文件中创建数据源。这样,您的数据库凭据将位于服务器文件本身中,您只需在java fiels中使用数据源名称即可。
答案 1 :(得分:0)
您必须知道数据库凭据才能连接。
您必须为您的应用程序创建服务器,该服务器将为客户端API
并连接到数据库本身。 API将隐藏您需要的所有内容,甚至独立于RDBMS类型。请参阅Client-server model此处
答案 2 :(得分:0)
没有什么可以让您免于第三方对您的应用进行反向工程并获取数据库凭据。 请勿以任何形式将其硬编码到您的应用中。
我认为对您的问题最合适的解决方案是增加一些授权。
您可以在应用和数据库(服务层,如SOAP,或类似REST api)之间添加图层,并限制每个用户的权限。另一种选择是使用mysql的权限管理。
希望这会有所帮助。