docs: create DevOps/Hashicorp-Vault/vault-postgresql-users

main
Федоров Дмитрий 2024-08-01 14:55:40 +00:00 committed by Dmitriy Fedorov
parent ac5ebaa626
commit 1005f589eb
1 changed files with 52 additions and 0 deletions

View File

@ -0,0 +1,52 @@
---
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.*