Настройка хранилища секретов

Настройка хранилища секретов производится только для подключения к СУБД PostgreSQL и резервного копирования данных с помощью модуля PostgreSQL Universal.

Аутентификационная информация (далее по тексту — секрет) для подключения к СУБД PostgreSQL, с целью резервного копирования или восстановления данных СУБД, хранится в конфигурационном файле, что не является безопасным подходом, т.к. злоумышленники могу получить доступ к содержимому файла, если он недостаточно защищён.

Более безопасным подходом к хранению секретов является использование инструмента управления секретами, таким как HashiCorp Vault. Эта система позволяет шифровать секреты и хранить их в безопасном хранилище, к которому имеют доступ авторизованные пользователи СРК RuBackup с соответствующими правами доступа.

Интеграция СРК RuBackup с хранилищем секретов HashiCorp Vault происходит через основной сервер (при его недоступности — через резервный сервер) посредством интерфейса REST API.

Интеграция СРК RuBackup с хранилищем секретов HashiCorp Vault поддерживается только при создании и восстановлении полных и инкрементальных резервных копий.

1. Добавление хранилища

Перейдите в раздел «Администрирование» — подраздел «Настройки хранилища секретов» — блок «Список хранилищ секретов».

В открывшемся окне нажмите {button-add} и заполните форму «Добавление хранилища секретов»:

  • в поле «Имя хранилища секретов» укажите отображаемое имя хранилища;

  • «Тип хранилища секретов» — доступно только хранилище секретов типа HashiCorp Vault;

  • при использовании https-запросов в хранилище секретов добавьте сертификат стандарта x.509 в текстовом формате, предварительно полученный на шаге b. При использовании http-запросов в хранилище секретов добавлять сертификат не требуется;

  • введите описание хранилища секретов;

  • сохраните результат, нажав {button-apply}.

Добавленное хранилище будет отображено в Списке хранилищ секретов.

2. Добавление метода получения секрета

Перейдите в раздел «Администрирование» — подраздел «Настройки хранилища секретов» — блок «Список методов получения секрета».

В открывшемся окне нажмите {button-add} и заполните форму «Добавление метода получения секрета»:

  • в поле «Имя метода получения секрета» укажите отображаемое в «Списке методов получения секретов» имя метода;

  • в поле «Имя хранилища секретов» выберите из выпадающего списка доступное (созданное на предыдущем шаге) хранилище секретов, к которому будет подключение при выборе создаваемого метода для запроса секрета;

  • в поле «Токен» введите токен (идентификатор для получения секрета), предварительно полученный у Администратора хранилища секретов;

  • в поле «Метод получения секретов» укажите путь до секрета, предварительно полученный у Администратора хранилища секретов.

Формат пути к секрету представлен в таблице:

Таблица 1. Методы получения аутентификационной информации для подключения к СУБД PostgreSQL в хранилище секретов
Метод получения секретов Использование https-запросов (указан сертификат при создании хранилища) Использование http-запросов (сертификат не указан при создании хранилища)

Формат пути к секрету

hostname:8200/v1/vault/data/postgresql

<ip-address or hostname>:8201/v1/vault/data/postgresql

Описание формата метода

где:

* hostname — имя указанное в сертификате и используемом для подключения к хранилищу, хоста на котором развёрнуто хранилище секретов HashiCorp Vault;

* 8200 — порт (по умолчанию) для прослушивания запросов к хранилищу секретов HashiCorp Vault по безопасному протоколу https;

* /v1/vault/data/postgresql — путь до папки, содержащей секрет

где:

* <ip-address or hostname> — ip адрес или имя хоста, на котором развёрнуто хранилище секретов HashiCorp Vault, секрет которого запрашивается;

* 8201 — порт (по умолчанию) для прослушивания запросов к хранилищу секретов HashiCorp Vault, по протоколу http;

* /v1/vault/data/postgresql — путь до папки, содержащей секрет

  • введите описание метода получения секрета;

  • сохраните результат, нажав {button-apply}.

Добавленный метод будет отображён в Списке методов получения секрета.

3. Политика доступа к хранилищу секретов

Суперпользователь СРК RuBackup может назначить Супервайзеру или Администратору СРК RuBackup доступ к выбранному секрету посредством ассоциации пользователя с методом получения секрета.

Перейдите в раздел «Администрирование» — подраздел «Настройки хранилища секретов» — блок «Доступ пользователей к методам».

В открывшемся окне нажмите {button-add} и заполните форму «Добавление метода получения секрета»:

  • в поле «Имя хранилища секретов» выберите из выпадающего списка добавленное хранилище;

  • в поле «Имя метода получения секрета» выберите из выпадающего списка добавленный метод, с которым будет ассоциирован данный пользователь;

  • далее показан список пользователей (с назначенной ролью Супервайзер и Администратор), которым следует назначить доступ к методу получения секрета в выбранном хранилище секретов;

  • сохраните результат, нажав {button-apply} .

Добавленный пользователь и ассоциированный с ним метод будет отображён в окне «Доступ пользователей к методам».