8.4.4 Сервисный ключ MySQL
- 8.4.4.1 Сравнение компонентов и плагинов сервисного ключа
- 8.4.4.2 Установка компонента сервисного ключа
- 8.4.4.3 Установка плагина сервисного ключа
- 8.4.4.4 Использование компонента сервисного ключа на основе файлов (component_keyring_file)
- 8.4.4.5 Использование компонента сервисного ключа на основе зашифрованных файлов (component_keyring_encrypted_file)
- 8.4.4.6 Использование плагина сервисного ключа KMIP (keyring_okv)
- 8.4.4.7 Использование плагина сервисного ключа Amazon Web Services (keyring_aws)
- 8.4.4.8 Использование плагина сервисного ключа HashiCorp Vault
- 8.4.4.9 Использование компонента сервисного ключа Oracle Cloud Infrastructure Vault
- 8.4.4.10 Поддерживаемые типы и длины ключей сервисного ключа
- 8.4.4.11 Миграция ключей между хранилищами сервисного ключа
- 8.4.4.12 Функции управления ключами сервисного ключа общего назначения
- 8.4.4.13 Функции управления ключами сервисного ключа, специфичные для плагина
- 8.4.4.14 Метаданные сервисного ключа
- 8.4.4.15 Параметры команды сервисного ключа
- 8.4.4.16 Системные переменные сервисного ключа
Сервер MySQL поддерживает сервисный ключ, позволяющий внутренним компонентам и плагинам сервера безопасно хранить конфиденциальную информацию для последующего извлечения. Реализация включает следующие элементы:
-
Компоненты и плагины сервисного ключа, управляющие базовым хранилищем или взаимодействующие с хранилищем данных. Использование сервисного ключа предполагает установку одного из доступных компонентов или плагинов. Компоненты и плагины сервисного ключа оба управляют данными сервисного ключа, но настраиваются по-разному и могут иметь операционные различия (см. раздел 8.4.4.1, «Сравнение компонентов и плагинов сервисного ключа»).
Доступны следующие компоненты сервисного ключа:
component_keyring_file: Хранит данные сервисного ключа в файле на локальном хосте сервера. Доступен в дистрибутивах MySQL Community Edition и MySQL Enterprise Edition. См. раздел 8.4.4.4, «Использование компонента сервисного ключа на основе файлов (component_keyring_file)».component_keyring_encrypted_file: Хранит данные сервисного ключа в зашифрованном, защищённом паролем файле на локальном хосте сервера. Доступен в дистрибутивах MySQL Enterprise Edition. См. раздел 8.4.4.5, «Использование компонента сервисного ключа на основе зашифрованных файлов (component_keyring_encrypted_file)».component_keyring_oci: Хранит данные сервисного ключа в хранилище Oracle Cloud Infrastructure Vault. Доступен в дистрибутивах MySQL Enterprise Edition. См. раздел 8.4.4.9, «Использование компонента сервисного ключа Oracle Cloud Infrastructure Vault».
Доступны следующие плагины сервисного ключа:
keyring_okv: Плагин KMIP 1.1 для использования с хранилищами сервисного ключа на основе KMIP, совместимыми с back-end, такими как Oracle Key Vault и Gemalto SafeNet KeySecure Appliance. Доступен в дистрибутивах MySQL Enterprise Edition. См. раздел 8.4.4.6, «Использование плагина сервисного ключа KMIP (keyring_okv)».keyring_aws: Взаимодействует с Amazon Web Services Key Management Service для генерации ключей и использует локальный файл для хранения ключей. Доступен в дистрибутивах MySQL Enterprise Edition. См. раздел 8.4.4.7, «Использование плагина сервисного ключа Amazon Web Services (keyring_aws)».keyring_hashicorp: Взаимодействует с HashiCorp Vault для хранения данных на сервере back-end. Доступен в дистрибутивах MySQL Enterprise Edition. См. раздел 8.4.4.8, «Использование плагина сервисного ключа HashiCorp Vault».
-
Интерфейс сервиса сервисного ключа для управления ключами сервисного ключа. Доступ к этому сервису осуществляется на двух уровнях:
SQL-интерфейс: в SQL-запросах вызывайте функции, описанные в разделе 8.4.4.12, «Функции управления ключами сервисного ключа общего назначения».
C-интерфейс: в коде на языке C вызывайте функции сервиса сервисного ключа, описанные в разделе 7.6.9.2, «Сервис сервисного ключа».
-
Доступ к метаданным ключей:
-
Таблица Performance Schema
keyring_keysпредоставляет метаданные о ключах в сервисном ключе. Метаданные ключей включают идентификаторы ключей, владельцев ключей и идентификаторы ключей back-end. Таблицаkeyring_keysне предоставляет конфиденциальных данных сервисного ключа, таких как содержимое ключа. См. раздел 29.12.18.2, «Таблица keyring_keys». -
Таблица Performance Schema
keyring_component_statusпредоставляет информацию о статусе используемого компонента сервисного ключа, если он установлен. См. раздел 29.12.18.1, «Таблица keyring_component_status».
-
Возможность миграции ключей. MySQL поддерживает миграцию ключей между хранилищами, что позволяет администраторам баз данных переключать установку MySQL с одного хранилища на другое. См. раздел 8.4.4.11, «Миграция ключей между хранилищами сервисного ключа».
Реализация плагинов сервисного ключа пересмотрена для использования инфраструктуры компонента. Это обеспечивается с помощью встроенного плагина, названного
daemon_keyring_proxy_plugin, который выступает в качестве моста между плагином и API сервиса компонента. См. раздел 7.6.8, «Плагин-мост прокси сервисного ключа».
Для управления ключами шифрования компоненты component_keyring_file и component_keyring_encrypted_file не предназначены для решения проблем соответствия нормативным требованиям. Такие стандарты безопасности, как PCI, FIPS, и другие, требуют использования систем управления ключами для защиты, управления и защиты ключей шифрования в хранилищах ключей или модулях аппаратной безопасности (HSM).
Потребителями сервиса сервисного ключа в MySQL являются:
СУБД хранения
InnoDBиспользует сервисный ключ для хранения своего ключа для шифрования табличного пространства. См. раздел 17.13, «Шифрование данных InnoDB при хранении».MySQL Enterprise Audit использует сервисный ключ для хранения пароля шифрования файла журнала аудита. См. Шифрование файлов журнала аудита.
Управление бинарным журналом и журналом репликации поддерживает шифрование файлов журналов на основе сервисного ключа. При включенном шифровании файлов журналов сервисный ключ хранит ключи, используемые для шифрования паролей бинарных файлов журналов и файлов журналов репликации. См. раздел 19.3.2, «Шифрование бинарных файлов журналов и файлов журналов репликации».
Главный ключ для расшифровки ключа файла, который расшифровывает сохранённые значения конфиденциальных системных переменных, хранится в сервисном ключе. Для поддержки безопасного хранения сохранённых значений системных переменных на экземпляре сервера MySQL должен быть включен компонент сервисного ключа, а не плагин сервисного ключа, который не поддерживает эту функцию. См. Сохранение конфиденциальных системных переменных.
Для получения общих инструкций по установке сервисного ключа см. раздел 8.4.4.2, «Установка компонента сервисного ключа» и раздел 8.4.4.3, «Установка плагина сервисного ключа». Для получения информации об установке и настройке конкретного компонента или плагина сервисного ключа см. соответствующий раздел.
Информация об использовании функций сервисного ключа приведена в разделе 8.4.4.12, «Функции управления ключами сервисного ключа общего назначения».
Компоненты, плагины и функции Keyring обращаются к службе keyring, предоставляющей интерфейс к keyring. Сведения об обращении к этой службе и написании плагинов keyring см. в разделе 7.6.9.2, «Служба keyring» и создании плагинов keyring.
© 2025 Oracle
Licensed under the GPLv2 License.