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

Движки секретов. Cubbyhole (API)

В данном разделе представлена документация API для движка секретов StarVault Cubbyhole. Для общей информации об использовании и работе движка секретов Cubbyhole, пожалуйста, ознакомьтесь с документацией StarVault Cubbyhole.

Данное руководство предполагает, что движок секретов Cubbyhole включен по пути /cubbyhole в StarVault. Поскольку возможно включение движков секретов в любом месте, пожалуйста, обновите свои API вызовы соответственно.

1. Чтение секрета

Эта конечная точка получает секрет по указанному пути.

Метод Путь

GET

/cubbyhole/:path

1.1. Параметры

  • path (string: <обязательно>) - указывает путь к секрету для чтения. Это указывается как часть URL.

1.2. Пример запроса

$ curl \
    --header "X-Vault-Token: ..." \
    http://127.0.0.1:8200/v1/cubbyhole/my-secret
Пример ответа:
{
  "auth": null,
  "data": {
    "foo": "bar"
  },
  "lease_duration": 0,
  "lease_id": "",
  "renewable": false
}

2. Список секретов

Эта конечная точка возвращает список секретных записей по указанному пути. Папки оканчиваются на /. Входные данные должны быть папкой; запрос по файлу не вернет значения. Сами значения недоступны через эту команду.

Метод Путь

LIST

/cubbyhole/:path

2.1. Параметры

  • path (string: <обязательно>) - указывает путь к секретам для списка. Это указывается как часть URL.

Пример запроса:
$ curl \
    --header "X-Vault-Token: ..." \
    --request LIST \
    http://127.0.0.1:8200/v1/cubbyhole

Пример ниже показывает вывод для запроса по пути cubbyhole/, когда существуют секреты по адресам cubbyhole/foo и cubbyhole/foo/bar; обратите внимание на разницу в двух записях.

Пример ответа:
{
  "auth": null,
  "data": {
    "keys": ["foo", "foo/"]
  },
  "lease_duration": 2764800,
  "lease_id": "",
  "renewable": false
}

3. Создание/обновление секрета

Эта конечная точка сохраняет секрет по указанному пути.

Метод Путь

POST

/cubbyhole/:path

3.1. Параметры

  • path (string: <обязательно>) - указывает путь к секретам для создания/обновления. Это указывается как часть URL.

  • :key (string: "") - указывает ключ в полезной нагрузке, связанный с соответствующим значением, который будет храниться по данному адресу. Можно указать несколько пар ключ/значение, и все они будут возвращены при операции чтения.

Пример тела запроса:
{
  "foo": "bar",
  "zip": "zap"
}
Пример запроса:
$ curl \
    --header "X-Vault-Token: ..." \
    --request POST \
    --data @payload.json \
    http://127.0.0.1:8200/v1/cubbyhole/my-secret

4. Удаление секрета

Эта конечная точка удаляет секрет по указанному пути.

Метод Путь

DELETE

/cubbyhole/:path

4.1. Параметры

  • path (string: <обязательно>) - указывает путь к секрету для удаления. Это указывается как часть URL.

Пример запроса:
$ curl \
    --header "X-Vault-Token: ..." \
    --request DELETE \
    http://127.0.0.1:8200/v1/cubbyhole/my-secret