Обзор
Key Management Service — сервис для создания ключей шифрования в Yandex.Cloud и управления ими.
Современные алгоритмы шифрования открыты. Без доступа к ключу, знания шифртекста и алгоритма шифрования недостаточно для расшифровки данных. Таким образом задача безопасного хранения данных сводится к задаче безопасного хранения ключей шифрования.
Шифруемые данные бывают разных типов: от паролей, OAuth-токенов и SSH-ключей до массивов данных гигабайтных размеров. Они могут требовать разный тип доступа (произвольный или последовательный), и разные виды хранилищ. В зависимости от всех этих факторов подбираются оптимальные алгоритмы шифрования. При большом количестве данных важно не только единообразно контролировать доступ к ним, но и учитывать специфику каждого конкретного вида.
Сервис Key Management Service решает описанные выше задачи и обеспечивает безопасное и централизованное хранение ключей шифрования.
Интерфейсы работы с сервисом
Для взаимодействия с KMS можно использовать:
- Консоль управления.
- Интерфейс командной строки (CLI).
- SDK: на Java, Go, Python или Node.js.
- API: REST или gRPC.
Управление ключами
Ключ — это основной ресурс KMS, представляющий из себя набор версий криптографического материала, которые можно использовать для шифрования или расшифровки данных. Контролируйте жизненный цикл криптоматериала, управляя ключами:
Интеграция ключей с сервисами и инструментами
Вы можете использовать ключи KMS:
- В сервисах Yandex.Cloud:
- При работе с Terraform.
- В библиотеках шифрования:
Безопасное хранение ключей
Криптоматериал ключей хранится в зашифрованном виде и недоступен в открытом виде вне сервиса KMS. При использовании API сервиса вы можете зашифровать или расшифровать переданные данные определенным ключом, но не можете получить криптоматериал в явном виде. Он восстанавливается исключительно в оперативную память и только на время выполнения операций с соответствующим ключом.
Для ключей доступны все возможности управления доступом, предоставляемые Identity and Access Management. Подробнее об управлении доступом и назначении ролей читайте в разделе Управление доступом
Аудит использования ключей
Шифртекст нельзя прочитать без доступа к соответствующему ключу. Все операции с ключами записываются в аудитные логи. Таким образом помимо шифрования, важным плюсом использования KMS является проверка доступа к зашифрованным данным с помощью логов использования ключей.
Каждая запись аудитного лога содержит следующую информацию:
- Дата и время.
- Тип операции.
- Используемый ключ.
- Субъект (аккаунт в Yandex.Cloud или сервисный аккаунт).
Чтобы получить аудитные логи, обратитесь в службу технической поддержки.