Для улучшения работы сайта мы используем файлы cookies. Оставаясь на сайте, вы соглашаетесь с политикой обработки персональных данных.

/sys/init

Конечная точка /sys/init используется для инициализации нового StarVault.

1. Статус инициализации

Эта конечная точка возвращает статус инициализации StarVault.

Метод

Путь

GET

/sys/init

Пример запроса:
curl \
  http://127.0.0.1:8200/v1/sys/init
Пример ответа:
{
  "initialized": true
}

2. Начало инициализации

Эта конечная точка инициализирует новый StarVault. StarVault не должен быть ранее инициализирован. Параметры восстановления, а также возможность использования сохранённых общих ресурсов, доступны только при использовании функции Auto Unseal .

Метод

Путь

POST

/sys/init

2.1. Параметры

  • pgp_keys (array<string>: nil) – задаёт массив открытых ключей PGP, используемых для шифрования выходных ключей распечатывания. Порядок сохраняется. Ключи должны быть закодированы в формате base64 из исходного двоичного представления. Размер этого массива должен быть таким же, как и secret_shares.

  • root_token_pgp_key (string: "") – указывает открытый ключ PGP, используемый для шифрования исходного корневого токена. Ключ должен быть закодирован в формате base64 из исходного двоичного представления.

  • secret_shares (int: <required>) – указывает количество частей, на которые следует разделить корневой ключ.

  • secret_threshold (int: <required>) – указывает количество частей, необходимое для восстановления корневого ключа. Оно должно быть меньше или равно secret_shares.

Кроме того, следующие параметры поддерживаются только при использовании функции Auto Unseal:

  • stored_shares (int: <required>) – указывает количество частей, которые должны быть зашифрованы HSM и сохранены для автоматического распечатывания. Текущее значение должно быть таким же, как secret_shares.

  • recovery_shares (int: 0) – указывает количество частей, на которые будет разделен ключ восстановления. Доступно только при использовании функции автоматического распечатывания.

  • recovery_threshold (int: 0) – указывает количество частей, необходимое для восстановления ключа восстановления. Оно должно быть меньше или равно recovery_shares. Доступно только при использовании функции автоматического распечатывания.

  • recovery_pgp_keys (array<string>: nil) – задаёт массив открытых ключей PGP, используемых для шифрования выходных ключей восстановления. Порядок сохраняется. Ключи должны быть закодированы в формате base64 из их исходного двоичного представления. Размер этого массива должен быть равен recovery_shares. Доступно только при использовании функции автоматического распечатывания.

Пример тела запроса:
{
  "secret_shares": 10,
  "secret_threshold": 5
}
Пример запроса:
curl \
  --request POST \
  --data @payload.json \
  http://127.0.0.1:8200/v1/sys/init

Ответом будет объект в формате JSON, включающий корневые ключи (возможно, зашифрованные, если pgp_keys предоставлены), корневые ключи в кодировке base64 и начальный корневой токен:

Пример ответа:
{
  "keys": ["one", "two", "three"],
  "keys_base64": ["cR9No5cBC", "F3VLrkOo", "zIDSZNGv"],
  "root_token": "foo"
}

Напоминаем, что ключи восстановления используются в качестве средства аутентификации для повторного создания ключей и восстановления учётных данных root и не могут быть использованы для распечатывания StarVault в случае недоступности механизма распечатывания. Полное предупреждение см. в документации по функции Auto Unseal.