MySQL应用程序用户与数据库用户

时间:2014-06-24 21:56:08

标签: mysql sql database privileges

不幸的是,这个问题可能有点宽泛,因为我无法找出合适的条款来帮助我将所有这些结合在一起。我是php / SQL的新手,我正在尝试设置一个具有非常简单的登录/注册功能的最小网站。

  • 每当我注册新的网络用户时,我应该创建一个新的数据库用户吗?
  • CRUD权限是否可以安全地提供给网站的所有用户?

我是否应该让一个数据库用户进行注册,只能在他们登录之前插入用户表而不需要其他用户(不需要mysqli_connect()的密码)?

登录后,他们会与不同类型的数据库用户建立连接,其中一个用户拥有更多使用该网站的权限。

  • 应该有多少种不同类型的数据库用户?

我假设数据库工作者的一小组用户(包括一个用于root访问的用户),另一个用于每种类型的Web用户的用户(即雇主拥有比雇员更多的权限),以及另一个仅用于注册的受限用户。 / p>

  • 总而言之,>小网站中的10位数据库用户是不寻常的?
  • 是否存在与拥有多种类型用户相关的性能/空间成本?

我感谢任何回复和链接,如果这些是非常基本的问题,请致歉。

1 个答案:

答案 0 :(得分:1)

我一直在努力解决这个问题,所以如果对刚开始的其他人有帮助,我会发一个答案。

每当我注册新的网络用户时,我是否应该创建新的数据库用户?

不,数据库用户通过其权限进行区分。因此,所有用户都符合一组具有不同权限级别的组。数据库帐户与Web帐户是分开的 - 连接到数据库是在幕后完成的,没有指向正在使用的Web帐户的链接。

CRUD权限是否可以安全地提供给网站的所有用户?

应该有多少种不同类型的数据库用户?

数量取决于您的数据库。通常,有4 groups

  • 数据库管理员
  • 数据库设计师
  • 休闲最终用户
  • 原生最终用户

但是,如果要授予表级权限,则可能需要进行更多分支。这表明10个DB帐户数量相当小,several hundred is more likely

权限越多,所需的空间越多,但这是一个相当细致的考虑因素,不应该在性能方面发挥重要作用。