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

时间:2019-08-13 22:16:13

标签: java mysql

我正在尝试在我的项目中实现登录功能。为了使其“安全”,我想尝试使用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:“”)连接到数据库,并且看看我自己的包含所有用户登录名的表?

1 个答案:

答案 0 :(得分:1)

不,这不是一个好主意。您可以使用bcrypt来存储哈希密码而不是纯文本密码。在这方面,您将对来自前端的密码进行哈希处理,然后将该值与数据库中的值进行比较。

您可以阅读this帖子以查看一些示例。