Files
vault/docs/vault-psql-dynamic.md
Vassiliy Yegorov e0776401c8 fix
2022-08-25 13:11:11 +07:00

1.1 KiB
Raw Blame History

Настраиваем PSQL на работу с динамическими секретами

  1. подключаем новый метод авторизации
vault secrets enable -path=psql database
  1. настраиваем конфиг и шаблон
vault write psql/config/test-psql \
    plugin_name=postgresql-database-plugin \
    allowed_roles="db1-role" \
    connection_url="postgresql://{{username}}:{{password}}@psql:5432/testdb1?sslmode=disable" \
    username="testuser" \
    password="pa$$w0rd"
  1. добавляем роль
vault write psql/roles/db1-role \
    db_name=testdb1 \
    creation_statements="CREATE ROLE \"{{name}}\" WITH LOGIN PASSWORD '{{password}}' VALID UNTIL '{{expiration}}'; \
        GRANT SELECT ON ALL TABLES IN SCHEMA public TO \"{{name}}\";" \
    default_ttl="1h" \
    max_ttl="24h"
  1. пробуем получить креды
vault read psql/db-creds
  1. пробуем под ними авторизоваться
psql -h 127.0.0.1 -d testdb1 -W -U v-root-db1-role-<hash>