mysql认证机构

2023年 8月 6日 74.3k 0

MySQL是一款开源的关系型数据库,它的安全性至关重要。为了确保安全性,MySQL引入了认证机构的概念。

mysql认证机构

认证机构就是MySQL服务器端用来验证客户端身份的可插拔式插件。MySQL服务器默认使用基于密码的认证机构来验证客户端身份,也可以使用其他的认证机构。

MySQL 8.0之前支持多种认证方式:Native, mysql_old_password, mysql_native_password, sha256_password等。而在MySQL 8.0之后,为了提高安全性,只支持使用caching_sha2_password认证机构。

caching_sha2_password认证机构是一种基于SHA-256和随机盐的加密算法。它使用用户密码和随机的salt来创建加密哈希。对于每个新连接,服务器会生成一个新的salt。

mysql>CREATE USER 'test_user'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'test_password';
Query OK, 0 rows affected (0.03 sec)
mysql>GRANT ALL PRIVILEGES ON test_db.* TO 'test_user'@'localhost';
Query OK, 0 rows affected (0.01 sec)

$ mysql -u test_user -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 31
Server version: 8.0.21 MySQL Community Server - GPL
...

在创建用户时使用caching_sha2_password认证机构,并在授予权限时指定用户。通过运行mysql命令行工具进行连接时,它会提示输入密码。如果密码正确,将成功连接到MySQL服务器。

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论