我正在寻找解决办法,但我很乐意接受另一种解决方案。
问题: 我正在用Java设计一个应用程序,它的要求是每晚一次,同步到服务器数据库。不止一台笔记本电脑将运行此应用程序,并从动态IP地址运行。 我已经从cPanel接口创建并限制了对其SQL帐户的权限(而不是来自phpmyadmin,没有授予权限的权限)。 我需要授予这些受限制的帐户通配符权限,以允许该应用程序执行此操作。 我自己和网络托管服务商的转销商都无权访问root或拥有授权许可。所以我不能允许所选用户进行远程访问权限。
但是,我可以允许所有用户(包括不受限制的用户)通过cPanel接口从通配符IP地址进行远程访问。我可以通过这种方式通过我的Java程序远程访问。但是存在安全问题,因此我不想使用此选项。
_ _
非常感谢任何想法或建议。
P.S。 我意识到这是非常糟糕的结构,并且有不止一个问题。这个问题似乎很独特,我无法找到满足我需求的任何具体信息。
答案 0 :(得分:1)
就个人而言,我不会打开您的数据库到互联网。这是一个安全风险,大多数主机也会阻止这种情况。
您的第二个选项是我要使用的选项,创建一个在服务器上运行的API,对客户端进行身份验证,然后仅将API暴露给Internet(或者,因为您可以控制客户端,甚至可能只是通过VPN!),然后与数据库进行交互。
备份计划是对服务器的VPN访问;如果您的客户端可以VPN到主机网络,那么您可以允许您的客户端直接访问数据库。
关于您的问题3,如果您没有超级用户权限,那么您仍然拥有编辑用户的权限;能够授予用户权限(即使使用通配符主机)也不依赖于root用户,因此您可能拥有或不拥有此级别的访问权限,并且仅根据您的用户名无法判断。