Обзор шифрования Aria
MariaDB может шифровать данные в таблицах, использующих хранилище Aria. Это включает в себя как созданные пользователем таблицы, так и внутренние временные таблицы на диске, использующие хранилище Aria. Это гарантирует, что данные Aria доступны только через MariaDB.
Для шифрования с использованием хранилищ InnoDB и XtraDB см. Шифрование данных для InnoDB/XtraDB.
Основные настройки
Для включения шифрования для таблиц, использующих хранилище Aria, необходимо установить и настроить несколько системных переменных сервера. Большинству пользователей потребуется установить aria_encrypt_tables и encrypt_tmp_disk_tables.
Пользователям, использующим шифрование данных в состоянии покоя, также необходимо настроить плагин управления ключами и шифрования. Некоторые примеры — Плагин управления файловыми ключами и Плагин управления ключами AWS.
[mariadb] ... # File Key Management plugin_load_add = file_key_management file_key_management_filename = /etc/mysql/encryption/keyfile.enc file_key_management_filekey = FILE:/etc/mysql/encryption/keyfile.key file_key_management_encryption_algorithm = AES_CTR # Aria Encryption aria_encrypt_tables=ON encrypt_tmp_disk_tables=ON
Определение, зашифрована ли таблица
Хранилище InnoDB имеет таблицу information_schema.INNODB_TABLESPACES_ENCRYPTION, которая может использоваться для получения информации о зашифрованных таблицах. В Aria пока нет ничего подобного (см. MDEV-17324 по этому вопросу).
Для определения, зашифрована ли таблица Aria, в настоящее время необходимо найти в файле данных некоторый известный фрагмент открытого текста.
Например, предположим, что у нас есть следующая таблица:
SELECT * FROM db1.aria_tab LIMIT 1; +----+------+ | id | str | +----+------+ | 1 | str1 | +----+------+ 1 row in set (0.00 sec
Затем, мы можем найти в файле данных, относящемся к db1.aria_tab, строку str1 с помощью утилиты командной строки, такой как strings:
$ sudo strings /var/lib/mysql/db1/aria_tab.MAD | grep "str1" str1
Если вы найдете открытый текст строки, то таблица не зашифрована.
Шифрование и журнал Aria
В настоящее время шифруются только таблицы Aria. Журнал Aria пока не зашифрован. См. MDEV-8587 по этому вопросу.
© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/encrypting-data-for-aria/