Услуги доступа к секретному магазину
Я пытаюсь понять взаимодействие между людьми, службами и секретными магазинами. Я изучал документацию и учебное пособие по HashiCorp Vault, чтобы лучше понять. Я использую Vault вместо более громоздкого "секретного хранилища" ниже:
Вариант использования - когда службе требуется доступ к Vault для получения секрета (например, строки подключения к базе данных). Кажется, что человек, который настраивает службу с учетными данными для доступа к Vault, также знает эти учетные данные и может выдать себя за эту службу в любое время.
С другой стороны, если Vault также является поставщиком удостоверений для службы, он может предоставить одноразовые начальные учетные данные, которые будут использоваться во время инициализации службы. Затем они вращаются. В этот момент человек не может выдать себя за службу, которую он настроил во время "нормальной работы".
Тем не менее, я не читал этот вариант использования в документации, поэтому я запутался.
Чтобы добавить ясности, я понимаю, что в конечном итоге кому-то нужно доверять. Например, инженер ops может иметь свои собственные учетные данные для доступа к Vault и получить пароль для той же базы данных. Это позволит пользователю получить доступ, но не позволит ему олицетворять службу. Есть ли какая-либо причина, по которой инженер по эксплуатации должен также знать собственные учетные данные службы для доступа к Vault после инициализации?
1 ответ
Vault поддерживает создание одноразовых учетных данных для нескольких служб, в основном баз данных - см. Раздел " Секретный бэкэнд " документации.
Бэкэнд mysql включает в себя следующее описание:
Кроме того, он предоставляет новую возможность: с каждым сервисом, обращающимся к базе данных с уникальными учетными данными, он значительно упрощает аудит при обнаружении сомнительного доступа к данным: вы можете отследить его до конкретного экземпляра сервиса на основе имени пользователя SQL.