Mysql THEORY 用户通过自定义用户表访问


Mysql THEORY user access through custom user table

我是 mysql 的新手,并试图了解 mysql 中数据库的用户身份验证。背景是,在最简单的形式中,我正在创建一个文档控件数据库。主体表称为文档控件,其中包含doc_id、名称、date_added、blob 等。

数据库有一组用户,在 userid 表下定义,其中包含常规信息,例如user_id、姓名、地址、电子邮件、电话等。为了便于讨论,表userdoclink下的user_id和doc_id之间存在关系。如果用户 ID 与doc_id相关联,则该用户有权访问doc_id记录集。

表格总结如下:

**documentcontrol table**
doc_id 
name
date_added
blob_data
**userid table**
user_id
name
address_line1
address_line2
email
phone
**userdoclink table**
user_id
doc_id

我的问题是,我知道mysql有一个名为USER的表,其中包含用户名和密码,用于数据库身份验证以及设置表和记录集的权限。如果每个用户 ID 都有自己的用户名和用户 ID,那么将用户 ID 链接到 USER 用户名的最佳实践是什么?

我是否需要这样做,或者是否有其他方法可以通过自定义用户表向数据库验证用户?(很可能用户的电子邮件将是访问数据库的用户名)。我知道的唯一方法是通过 php 进行身份验证,如下所示。 最终,我的目的是对用户对某些记录集的访问进行精细控制,仅用于表中的 UPDATE 和 READ,任何关于最佳处理方式的指导将不胜感激。

$con = mysql_connect("localhost", "username", "password") or  die('Sorry, could not connect to server');
mysql_select_db("database", $con) or die('Sorry, could not connect to database');

为了练习起见,您必须使用phpmyAdmin提供的默认设置,因为您是新手,当您完成练习并准备好将您的网站托管到托管服务器时,托管服务将为您提供用户名和密码进行身份验证,您所要做的就是替换参数,否则您就做对了。