--- title: PostgreSQL через Vault - управление динамическими учетными записями description: published: true date: 2024-08-01T14:55:31.582Z tags: vault, postgresql editor: markdown dateCreated: 2024-08-01T14:55:31.582Z --- # Управление динамическими учетными записями в PostgreSQL через Hashicorp Vault >В инструкции мы рассмотрим процесс хранения учетной записи PostgreSQL в хранилище секретов Hashicorp Vault, используя механизм database, с возможностью автоматической смены секрета в СУБД при его смене в Vault. Также мы настроим Vault для создания временных учетных записей в PostgreSQL. ## Настройка прав PostgreSQL На сервере PostgreSQL нам необходимо: - Задать пароль для пользователя postgres. - Создать пользователя, пароль для которого мы будем хранить в Vault. - Разрешить подключение к базе данных для postgres и созданного пользователя. - Открыть порт 5432 для удаленного подключения. - Проверить доступы. Рассмотрим действия по шагам. ### Задаем пароль для postgres Данные действия необходимы, если мы не задавали пароль для пользователя postgres или мы не знаем данный пароль. >Стоит иметь ввиду, что данный пользователь может использоваться другими приложениями — таким образом, смена пароля приведет к потере их работоспособности. В этом случае, стоит уточнить текущий пароль и использовать его. Заходим под пользователем postgres и подключаемся к СУБД: ``` su - postgres $ psql ``` Вводим: ``` =# ALTER USER postgres PASSWORD 'password'; ``` *в данном примере мы задаем пароль password для пользователя postgres.* ### Создаем нового пользователя На данном шаге мы создадим пользователя, для которого и будем хранить секрет в Vault. В рамках примера мы не будем его предоставлять никаких доступов. Для нас достаточно, чтобы мы могли подключиться и удостовериться, что пароль будет меняться. В той же командной оболочке postgresql вводим: =# CREATE USER dmosk WITH PASSWORD 'myPassword'; *с помощью данной команды мы создадим пользователя dmosk с паролем myPassword.*