Documentation Home

6.4.4.2 使用 keyring_file 基于文件的密钥环插件

密钥环keyring_file插件将密钥环数据存储在服务器主机的本地文件中。

警告

对于加密密钥管理,该 keyring_file插件并非旨在作为法规遵从性解决方案。PCI、FIPS 等安全标准要求使用密钥管理系统来保护、管理和保护密钥库或硬件安全模块 (HSM) 中的加密密钥。

要安装keyring_file,请使用 第 6.4.4.1 节“Keyring 插件安装”中的一般说明,以及此处提供的特定配置信息 keyring_file

要在服务器启动过程中可用, keyring_file必须使用该 --early-plugin-load选项加载。keyring_file_data系统变量可选地配置keyring_file插件用于数据存储的文件的 位置。默认值是特定于平台的。要明确配置文件位置,请在启动时设置变量值。例如,在服务器 my.cnf文件中使用这些行,根据需要调整 .so平台的后缀和文件位置:

[mysqld]
early-plugin-load=keyring_file.so
keyring_file_data=/usr/local/mysql/mysql-keyring/keyring

Keyring 操作是事务性的: keyring_file插件在写入操作期间使用备份文件,以确保在操作失败时可以回滚到原始文件。备份文件与系统变量的值同名, keyring_file_data后缀为.backup.

有关的其他信息 keyring_file_data,请参阅 第 6.4.4.12 节,“密钥环系统变量”

从 MySQL 5.7.17 开始,为确保仅当存在正确的密钥环存储文件时才刷新密钥,将密钥 keyring_file环的 SHA-256 校验和存储在文件中。在更新文件之前,插件会验证它是否包含预期的校验和。

keyring_file插件支持构成标准 MySQL Keyring 服务接口的功能。可以在两个级别访问由这些函数执行的密钥环操作:

示例(使用 SQL 接口):

SELECT keyring_key_generate('MyKey', 'AES', 32);
SELECT keyring_key_remove('MyKey');

有关 允许的密钥值的特征的信息keyring_file,请参阅 第 6.4.4.6 节,“支持的密钥环密钥类型和长度”