在MySQL中将用户限制为正确的读/写/更新权限

在MySQL中将用户限制为正确的读/写/更新权限,mysql,sql,database,security,Mysql,Sql,Database,Security,让我们假设有一个名为mysite.com的网站- 现在,mysite已经有用户注册了该网站 假设Jane和John是该网站的两名注册用户 mysite.com使用MySQL存储数据 假设有一些表,例如存储用户名、地址、联系人等的用户 我的问题是我如何使简- 只能从用户表中读取她的行 只能修改用户表中的行 此外,在修改时,她无法更新username单元格中的值 此外,Jane和John在数据库方面的一般角色是什么?他们显然不能作为root/admin用户连接到MySQL。如何处理这种情况?

让我们假设有一个名为mysite.com的网站-

  • 现在,mysite已经有用户注册了该网站
  • 假设Jane和John是该网站的两名注册用户
  • mysite.com使用MySQL存储数据
  • 假设有一些表,例如存储用户名、地址、联系人等的用户
我的问题是我如何使简-

  • 只能从用户表中读取她的行
  • 只能修改用户表中的行
  • 此外,在修改时,她无法更新username单元格中的值

此外,Jane和John在数据库方面的一般角色是什么?他们显然不能作为root/admin用户连接到MySQL。如何处理这种情况?

您不会试图在数据库用户级别控制这种情况。实际上,您的数据库用户严格要求使用与数据库直接交互的不同代码段。在后端代码中,您希望检查软件的哪个用户已登录,然后将其限制为仅读取或写入某些行或数据

无法将MySQL用户设置为能够读取/写入表中的某些行,而不能读取/写入其他行


要对此进行扩展。。。你可能有一个软件,让简读一些信息,但不写任何东西。该软件应以MySQL用户的身份连接到数据库,并具有完成其任务所需的最低权限。例如,它可以选择,但不能更新或插入。另一个软件可能允许用户编辑行,因此您为该软件设置了一个具有更新权限的MySQL用户。

您不会试图在数据库用户级别控制此操作。实际上,您的数据库用户严格要求使用与数据库直接交互的不同代码段。在后端代码中,您希望检查软件的哪个用户已登录,然后将其限制为仅读取或写入某些行或数据

无法将MySQL用户设置为能够读取/写入表中的某些行,而不能读取/写入其他行


要对此进行扩展。。。你可能有一个软件,让简读一些信息,但不写任何东西。该软件应以MySQL用户的身份连接到数据库,并具有完成其任务所需的最低权限。例如,它可以选择,但不能更新或插入。另一个软件可能允许用户编辑行,因此您为该软件设置了一个具有更新权限的MySQL用户。

我曾经在我的迷你项目中这样做过,我的项目基于HTML、CSS、JS、PHP和MySQL,我在其中创建了一个网站来存储员工数据库,员工可以登录到那个里的帐户,并对地址或电话号码进行一些更改,但我并没有允许更改姓名、政府ID或永久性的内容。 所有这些我都是在前端做的,而不是在后端

你可以这样做,比如说简和约翰的账户,他们可以在那里更改自己的信息

HTML中使用了禁用的属性,可以限制用户输入任何值


这就是我相信你的答案将基于你如何解释你的问题。如果成功了,欢迎你

我曾经在我的小项目中这样做过,我的项目是基于HTML、CSS、JS、PHP和MySQL的,在那里我创建了一个网站来存储员工数据库,员工可以登录到那里的帐户并进行一些更改,比如地址或电话号码,但我没有授予更改姓名、政府ID或其他永久性内容的权限。 所有这些我都是在前端做的,而不是在后端

你可以这样做,比如说简和约翰的账户,他们可以在那里更改自己的信息

HTML中使用了禁用的属性,可以限制用户输入任何值


这就是我相信你的答案将基于你如何解释你的问题。如果成功了,欢迎你

如果只禁用前端中的字段,任何人都可以在浏览器中打开HTML检查器并启用它。如果你的后端不检查以确保用户有权进行更改,那么你的网站将很快被黑客入侵。哦,对了,我从来没有考虑过,因为这是我在大学里的小项目。我现在记起来了。谢谢如果只禁用前端的字段,任何人都可以在浏览器中打开HTML检查器并启用它。如果你的后端不检查以确保用户有权进行更改,那么你的网站将很快被黑客入侵。哦,对了,我从来没有考虑过,因为这是我在大学里的小项目。我现在记起来了。谢谢