猿问

在数据库中创建具有特权的新用户

我正在尝试在我的项目中实现登录功能。为了使其“安全”,我想尝试使用 phpmyadmin(我管理数据库的工具)提供的用户系统,而不是使用 root 用户登录,然后将用户名和密码存储在表中并验证它们等。


我试图在 phpmyadmin 中添加一个新用户,然后我查看了代表添加新用户代码的 SQL 代码:


CREATE USER 'username_test'@'localhost' IDENTIFIED WITH mysql_native_password AS '***';

GRANT SELECT ON *.* TO 'username_test'@'localhost' REQUIRE NONE WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;

GRANT ALL PRIVILEGES ON `restaurant_app`.* TO 'username_test'@'localhost';

所以我的目标是使用此 SQL 在我的应用程序中注册登录用户。但是我不知道如何提供密码,我不完全理解这个命令的第一部分。此外,我希望您告诉我使用 phpmyadmin 用户功能是否是个好主意,或者我是否应该使用经典方法来执行此操作:使用 (user:"root", passwd:"") 连接到数据库并查看我自己的包含所有用户登录名的表?


长风秋雁
浏览 177回答 1
1回答

茅侃侃

不,这不是一个好主意。您可以使用 bcrypt 来存储散列密码而不是纯文本密码。在后端,您将散列来自前端的密码并将该值与数据库中的值进行比较。
随时随地看视频慕课网APP

相关分类

Java
我要回答