Начало работы
Создайте ваш первый секрет и получите его содержимое.
Создайте секрет
Секрет состоит из набора версий, в которых хранятся ваши данные. Версия содержит наборы ключей и значений:
- Ключ — это несекретное название для значения, по которому вы будете его идентифицировать.
- Значение — это секретные данные.
Версия не изменяется. Для любого изменения количества пар ключей-значений или их содержимого необходимо создать новую версию.
Чтобы создать секрет:
-
В консоли управления выберите каталог, в котором будет создан секрет.
-
В списке сервисов выберите Lockbox.
-
Нажмите кнопку Создать секрет.
-
В поле Имя введите имя секрета.
-
(опционально) В поле KMS ключ укажите существующий ключ или создайте новый.
Указанный ключ KMS используется для шифрования секрета. Если вы не будете указывать ключ, секрет будет зашифрован специальным системным ключом.
Совет
Использование своего ключа KMS дает возможность использовать все преимущества сервиса Yandex Key Management Service.
-
В блоке Версия:
- В поле Ключ введите неконфиденциальный идентификатор.
- В поле Значение введите конфиденциальные данные для хранения.
- Нажмите кнопку Добавить значение.
- (опционально) Повторите шаги и добавьте больше данных.
-
Нажмите кнопку Сохранить.
Получите содержимое секрета
Роли, необходимые для получения секрета
Если при создании секрета вы указали свой ключ KMS, необходимо назначить на него роль kms.keys.encrypterDecrypter, это необходимо для шифрования и расшифровки секрета.
Получите содержимое секрета
Для получения содержимого секрета обратитесь к нему с помощью API. При запросе без указания версии, будет возвращаться содержимое текущей (последней) версии.
Вы можете использовать эту логику в скриптах, сервисах и приложениях, где необходимо использовать содержимое секрета.
Чтобы получить содержимое секрета:
-
Получите IAM-токен, необходимый для аутентификации и сохраните его в переменную:
export IAM_TOKEN=`yc iam create-token`
Также вы можете получить IAM-токен сервисного аккаунта изнутри ВМ, к которой он привязан. Для этого выполните запрос в сервис метаданныx. Пример c использованием утилиты jq:
export IAM_TOKEN=`curl -H Metadata-Flavor:Google http://169.254.169.254/computeMetadata/v1/instance/service-accounts/default/token | jq -r .access_token`
-
Выполните запрос:
curl -X GET -H "Authorization: Bearer ${IAM_TOKEN}" \ https://payload.lockbox.api.cloud.yandex.net/lockbox/v1/secrets/<идентификатор секрета>/payload