#hashicorp-vault
#hashicorp-хранилище
Вопрос:
Я ищу лучшее решение для ротации секретов и обнаружил, что динамические секреты хранилища являются хорошими. Включив механизм секретов, скажем, для базы данных, приложения / службы могут арендовать динамические секреты.
Я заметил, что каждый раз, когда приложение арендует секрет базы данных, Vault создает нового пользователя / учетную запись в БД. Я понимаю, что каждое приложение / служба должно быть хорошим гражданином и использовать секрет в соответствии со сроком аренды. Однако в среде микросервисов ошибка реализации может привести к тому, что службы будут запрашивать слишком много динамических секретов, что приведет к созданию слишком большого количества учетных записей в БД.
Есть ли какой-либо способ предотвратить создание слишком большого количества учетных записей? Я просто беспокоюсь, что слишком много учетных записей может вызвать проблемы в БД.
Ответ №1:
Вы могли бы перейти к статическим ролям, которые создали бы одну роль с фиксированным именем пользователя, а затем vault просто повернул бы этот пароль, когда его нужно повернуть.
Вот несколько документов, которые помогут вам начать
https://www.vaultproject.io/api/secret/databases#create-static-role
https://www.vaultproject.io/docs/secrets/databases#static-roles
Кроме того, предупреждение с веб-сайта:
В настоящее время не все типы баз данных поддерживают статические роли. Пожалуйста, обратитесь к документации по конкретной базе данных в левой навигации или к таблице ниже в разделе Возможности базы данных, чтобы узнать, поддерживает ли данный сервер базы данных статические роли. `
Комментарии:
1. Спасибо за ваш ответ! Я использую базы данных Cassandra и Elasticsearch, которые не поддерживают статические роли. Итак, мой вопрос все еще открыт — как Vault предотвращает создание слишком большого количества учетных записей в DBs, если он поддерживает только динамическую роль?
2. Вы можете подключить плагины cassandra и Elastic vault и добавить туда функциональность для статических ролей самостоятельно. Я не уверен, что вижу другой выход, не имея «статических» кредитов (у вас может быть кеш creds, к которому все ваши приложения имеют доступ, и поворачивать его один раз в день)
3. Да, я считаю, что технически возможно включить функции кэша и статической роли с помощью разветвления плагина vault. Однако, прежде чем сделать это, мне действительно интересно, как продукт, когда Vault предоставляет динамическую роль, не является ли для него требованием безопасности / производительности предотвращение многочисленных динамических учетных записей?
4. я думаю, они предпочли причины аудита. Если у вас есть один пользователь на вызов, вы можете лучше отслеживать учетные данные и действия пользователя. Но это мое мнение.
5. Да, у меня такое же понимание. Спасибо за вашу информацию.