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

main
Федоров Дмитрий 2024-08-01 15:34:49 +00:00 committed by Dmitriy Fedorov
parent d2faf0c62f
commit f87057d69a
1 changed files with 5 additions and 6 deletions

View File

@ -2,7 +2,7 @@
title: PostgreSQL через Vault - управление динамическими учетными записями
description:
published: true
date: 2024-08-01T15:24:53.133Z
date: 2024-08-01T15:34:42.498Z
tags: vault, postgresql
editor: markdown
dateCreated: 2024-08-01T14:55:31.582Z
@ -269,14 +269,13 @@ psql -Udmosk -W template1
Настройка задается с помощью roles. На сервере Vault вводим команду:
```
vault write database/roles/postgresql-create \
db_name=postgresql \
creation_statements="CREATE ROLE \"{{name}}\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}'; GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO "{{name}}";" \
default_ttl="1h" \
max_ttl="24h"
db_name=postgresql \
creation_statements="CREATE ROLE \"{{name}}\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}'; GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO \"{{name}}\";" \
default_ttl="1h" \
max_ttl="24h"
```
|* обратите внимание, что запрос creation_statements важно написать именно так — первая кавычка двойная, остальные одинарные.
|** в данном примере:
- Мы создадим роль с названием **postgresql-create** (с тем названием, которое мы использовали в allowed_roles, когда создавали конфигурацию).
- Опция **db_name** должна называться как настройка, которую мы создали на шаге создания конфига (database/config/**postgresql**).
- Наша роль будет выполнять команду **creation_statements** — создавать пользователя и задавать ему права. Нужно переписать запрос, чтобы права выдавались такими, какими нужны именно вам. Для тестовых целей можно поставить как в данном примере.