10bet网址
MySQL 8.0参考手册
相关的文档10bet官方网站 本手册下载
PDF (Ltr)- 42.0 mb
PDF (A4)- 42.1 mb
手册页(TGZ)- 267.2 kb
手册页(邮政编码)- 376.9 kb
信息(Gzip)- 4.0 mb
信息(邮政编码)- 4.0 mb
本手册节选

MySQL 8.0参考手册/.../ 使用component_keyring_encrypted_file加密的基于文件的密匙环组件

6.4.4.5使用component_keyring_encrypted_file基于文件的加密密匙环组件

请注意

component_keyring_encrypted_file是商业产品MySQL企业版中包含的扩展。要了解更多关于商业产品的信息,请参见https://www.10bet靠谱mysql.com/products/

component_keyring_encrypted_file密匙环组件将密匙环数据存储在服务器主机本地的一个加密的、受密码保护的文件中。

警告

对于加密密钥管理,需要使用component_keyring_file而且component_keyring_encrypted_file组件,keyring_file而且keyring_encrypted_file插件并不打算作为法规遵从性解决方案。诸如PCI、FIPS等安全标准要求使用密钥管理系统来保护、管理和保护密钥库或硬件安全模块(hms)中的加密密钥。

使用component_keyring_encrypted_file对于密钥库管理,您必须:

  1. 编写一个通知服务器加载的清单component_keyring_encrypted_file,详见第6.4.4.2节“密匙环组件安装”

  2. 的配置文件component_keyring_encrypted_file,正如这里所描述的。

初始化时,component_keyring_encrypted_file读取全局配置文件,或者读取与本地配置文件配对的全局配置文件:

  • 组件试图从安装组件库文件的目录(即服务器插件目录)读取它的全局配置文件。

  • 如果全局配置文件指示使用本地配置文件,组件将尝试从数据目录读取其本地配置文件。

  • 虽然全局配置文件和本地配置文件位于不同的目录中,但文件名为component_keyring_encrypted_file.cnf在这两个位置。

  • 这是一个错误,没有配置文件存在。component_keyring_encrypted_file没有有效的配置无法初始化。

本地配置文件允许设置要使用的多个服务器实例component_keyring_encrypted_file,这样每个服务器实例的组件配置都特定于给定的数据目录实例。这使相同的密匙环组件可用于每个实例的不同数据文件。

component_keyring_encrypted_file配置文件具有以下属性:

  • 配置文件必须是有效的JSON格式。

  • 配置文件允许以下配置项:

    • “read_local_config”:只允许在全局配置文件中配置。如果该项不存在,则组件只使用全局配置文件。如果项目存在,则其值为真正的,指示组件是否应该从本地配置文件读取配置信息。

      如果“read_local_config”项与其他项一起出现在全局配置文件中时,组件将检查“read_local_config”项目价值:

      • 如果值为组件处理全局配置文件中的其他项,忽略本地配置文件。

      • 如果值为真正的,组件忽略全局配置文件中的其他项,并尝试读取本地配置文件。

    • “路径”:项值是用于存储密匙环数据的文件名的字符串。文件应该使用绝对路径命名,而不是相对路径。配置项必选。如果不指定,component_keyring_encrypted_file初始化失败。

    • “密码”:项目值为字符串,指定访问数据文件的密码。配置项必选。如果不指定,component_keyring_encrypted_file初始化失败。

    • “read_only”: keyring数据文件是否为只读。项目值为真正的(只读)(读/写)。配置项必选。如果不指定,component_keyring_encrypted_file初始化失败。

  • 数据库管理员负责创建要使用的任何配置文件,并确保其内容正确。如果发生错误,则服务器启动失败,管理员必须纠正服务器错误日志中诊断所指出的任何问题。

  • 任何存储密码的配置文件都应该具有限制模式,并且只能由用于运行MySQL服务器的帐户访问。

给定上述配置文件属性,进行配置component_keyring_encrypted_file,创建全局配置文件component_keyring_encrypted_file.cnf在目录中component_keyring_encrypted_file安装库文件,并可选地创建一个本地配置文件,也命名为component_keyring_encrypted_file.cnf,在data目录下。下面的说明假设密匙环数据文件命名为/usr/local/mysql/keyring/component_keyring_encrypted_file以读/写方式使用。您还必须选择一个密码。

  • 如果只使用全局配置文件,文件内容如下所示:

    {"path": "/usr/local/mysql/keyring/component_keyring_encrypted_file", "password": "密码", "read_only": false}

    在目录中创建此文件component_keyring_encrypted_file已安装库文件。

  • 或者,要使用全局和本地配置文件对,全局文件看起来像这样:

    {"read_local_config": true}

    在目录中创建此文件component_keyring_encrypted_file已安装库文件。

    本地文件看起来像这样:

    {"path": "/usr/local/mysql/keyring/component_keyring_encrypted_file", "password": "密码", "read_only": false}

    在data目录中创建这个文件。

Keyring操作是事务性的:component_keyring_encrypted_file在写操作期间使用备份文件,以确保在操作失败时可以回滚到原始文件。备份文件与数据文件名称相同,后缀为.backup

component_keyring_encrypted_file支持包含标准MySQL Keyring服务接口的功能。由这些函数执行的密匙环操作可在两个级别访问:

示例(使用SQL接口):

SELECT keyring_key_generate('MyKey', 'AES', 32);选择keyring_key_remove(“MyKey”);

所允许的键值的特征的信息component_keyring_encrypted_file,请参阅第6.4.4.12节“支持的Keyring密钥类型和长度”