谁是MySQL中的用户?

时间:2018-01-03 17:50:58

标签: mysql database

我开始学习开发数据库应用程序的基础知识(我想特别学习MySQL),但是我无法确定应用程序的结构应该如何。假设我的系统服务于学校的学生(记录成绩等),其中客户端是用C ++ / Qt编写的GUI应用程序,通过互联网与我的服务器计算机通信。

我的问题是实现这个的自然/正确方法是什么?

  • 我是否将SQL查询直接封装在GUI程序中,并且 从而使每个学生成为MySQL数据库的用户 为每个学生分配数据库用户?
  • 或者应该在我的服务器端应用程序中进行封装 write表示GUI应用程序和数据库之间的链接 服务器? (即服务器端应用程序是客户端的 MySQL系统。)

换句话说,谁是MySQL的用户?我的服务器端应用程序或客户端应用程序的用户?

1 个答案:

答案 0 :(得分:3)

在这两种情况下(宽客户端 - 客户端数据库或瘦客户端 - 客户端 - 服务器),只有1个MySQL用户就足够了。 您将在应用程序设置中存储用户和密码(通常对普通学生/客户隐藏)。 并且您将这些权利授予应用程序用户名,而不是学生。

应用程序的角色是控制用户权限。

安全性: 对于瘦客户端,它通常是安全的,但它将引入使用具有危险的API密钥的需要。 对于广泛的客户端架构,它足够危险,所以:

  • 通常,此类应用程序在内部工作
  • MySQL用户拥有保护数据免受完全破坏的权利(至少禁止丢弃表)。
  • 在SPECIFIC HOST上授予用户权限
  • 每小时或每天制作备份副本取决于 尺寸
  • 最好存储密码,而不是以开放形式存储 加密