- 18.104.22.168 Keyring Plugin Installation
- 22.214.171.124 Using the keyring_file File-Based Plugin
- 126.96.36.199 Using the keyring_encrypted_file Keyring Plugin
- 188.8.131.52 Using the keyring_okv KMIP Plugin
- 184.108.40.206 Using the keyring_aws Amazon Web Services Keyring Plugin
- 220.127.116.11 Migrating Keys Between Keyring Keystores
- 18.104.22.168 Supported Keyring Key Types and Lengths
- 22.214.171.124 General-Purpose Keyring Key-Management Functions
- 126.96.36.199 Plugin-Specific Keyring Key-Management Functions
- 188.8.131.52 Keyring Command Options
- 184.108.40.206 Keyring System Variables
MySQL Server supports a keyring that enables internal server components and plugins to securely store sensitive information for later retrieval. The implementation is plugin-based:
MySQL 5.7.11 and higher includes a keyring plugin,
keyring_file, that stores keyring data in a file local to the server host. This plugin is available in all MySQL distributions, Community Edition and Enterprise Edition included. See Section 220.127.116.11, “Using the keyring_file File-Based Plugin”.
MySQL 5.7.21 and higher includes a keyring plugin,
keyring_encrypted_file, that stores keyring data in an encrypted file local to the server host. This plugin is available in MySQL Enterprise Edition distributions. See Section 18.104.22.168, “Using the keyring_encrypted_file Keyring Plugin”.
MySQL 5.7.12 and higher includes
keyring_okv, a KMIP 1.1 plugin for use with KMIP-compatible back end keyring storage products such as Oracle Key Vault and Gemalto SafeNet KeySecure Appliance. This plugin is available in MySQL Enterprise Edition distributions. See Section 22.214.171.124, “Using the keyring_okv KMIP Plugin”.
MySQL 5.7.19 and higher includes
keyring_aws, a plugin that communicates with the Amazon Web Services Key Management Service for key generation and uses a local file for key storage. This plugin is available in MySQL Enterprise Edition distributions. See Section 126.96.36.199, “Using the keyring_aws Amazon Web Services Keyring Plugin”.
MySQL 5.7.21 and higher supports a server operational mode that enables migration of keys between underlying keyring keystores. This enables DBAs to switch a MySQL installation from one keyring plugin to another. See Section 188.8.131.52, “Migrating Keys Between Keyring Keystores”.
MySQL 5.7.13 and higher includes an SQL interface for keyring key management, implemented as a set of user-defined functions (UDFs). See Section 184.108.40.206, “General-Purpose Keyring Key-Management Functions”.
keyring_encrypted_file plugins for encryption
key management are not intended as a regulatory compliance
solution. Security standards such as PCI, FIPS, and others
require use of key management systems to secure, manage, and
protect encryption keys in key vaults or hardware security
Uses for the keyring within MySQL include:
InnoDBstorage engine uses the keyring to store its key for tablespace encryption.
InnoDBcan use any supported keyring plugin.
MySQL Enterprise Audit uses the keyring to store the audit log file encryption password. The audit log plugin can use any supported keyring plugin.
For general keyring installation instructions, see Section 220.127.116.11, “Keyring Plugin Installation”. For information specific to a given keyring plugin, see the section describing that plugin.
For information about using the keyring UDFs, see Section 18.104.22.168, “General-Purpose Keyring Key-Management Functions”.
Keyring plugins and UDFs access a keyring service that provides the interface for server components to the keyring. For information about accessing the keyring plugin service and writing keyring plugins, see Section 28.3.2, “The Keyring Service”, and Section 22.214.171.124, “Writing Keyring Plugins”.