MySQL Keyring支持不同类型(加密算法)和长度的密钥:
可用的密钥类型取决于安装的密钥环插件。
允许的密钥长度受多种因素影响:
通用密匙环可加载函数接口限制(对于使用中描述的密匙环函数之一管理的密匙第6.4.4.14节,“通用密匙环密钥管理功能”),或者来自后端实现的限制。这些长度限制可能因键操作类型而异。
除了一般的限制外,个别密匙环插件可能对每种密匙类型的密匙长度施加限制。
表6.27“通用密匙环密钥长度限制”显示一般的键长度限制。的下限keyring_aws
是由AWS KMS接口强加的,而不是密匙环功能。)密匙环的插件,表6.28,“Keyring插件的密钥类型和长度”显示每个密匙环插件允许的密匙类型,以及任何插件特定的密匙长度限制。对于密匙环组件,适用一般的密匙长度限制,没有密匙类型限制。
表6.27通用Keyring密钥长度限制
关键的操作 | 最大关键长度 |
---|---|
生成密钥 | 16,384字节(在MySQL 8.0.18之前有2,048个字节);1024年 |
存储键 | 16,384字节(在MySQL 8.0.18之前有2,048个字节);4096年 |
获取关键 | 16,384字节(在MySQL 8.0.18之前有2,048个字节);4096年 |
表6.28 Keyring插件密钥类型和长度
插件名称 | 允许密钥类型 | Plugin-Specific长度限制 |
---|---|---|
keyring_aws |
|
16、24或32字节 没有一个 |
keyring_encrypted_file |
|
没有一个 没有一个 没有一个 没有一个 |
keyring_file |
|
没有一个 没有一个 没有一个 没有一个 |
keyring_hashicorp |
|
没有一个 没有一个 没有一个 没有一个 |
keyring_oci |
|
16、24或32字节 |
keyring_okv |
|
16、24或32字节 没有一个 |
的秘密
key type,在MySQL 8.0.19版本中可用,用于使用MySQL密匙环存储敏感数据的通用用途,并被所有密匙环组件和大多数密匙环插件支持。密匙环进行加密和解密秘密
数据在存储和检索时以字节流的形式存储。
使用实例keyring操作秘密
密钥类型:
SELECT keyring_key_generate('MySecret1', 'SECRET', 20);选择keyring_key_remove(“MySecret1”);SELECT keyring_key_store('MySecret2', 'SECRET', 'MySecretData');选择keyring_key_fetch(“MySecret2”);选择keyring_key_length_fetch(“MySecret2”);选择keyring_key_type_fetch(“MySecret2”);选择keyring_key_remove(“MySecret2”);