AI agent může bezpečně pracovat s databází PostgreSQL, pokud oprávnění vynucuje sama databáze, ne parser na straně aplikace: role jen s právem SELECT pro čtení, samostatná role pro zápis bez možnosti převzít účet vlastníka a přístup zapínaný zvlášť pro každou databázi. V Aderlo Cloud má každá databáze PostgreSQL 18 přepínač přístupu agenta (žádný / čtení / plný, ve výchozím stavu žádný), připojení jen přes TLS z adres na vašem seznamu a rozšíření pgvector, PostGIS a pg_cron.
Proč agentovi nestačí heslo k databázi
Nejjednodušší řešení — dát agentovi connection string vlastníka databáze — znamená, že agent může všechno: smazat tabulku, změnit heslo, vymazat data. Nastavení „jen pro čtení“ na úrovni relace nic nechrání, protože v PostgreSQL ho relace zruší jediným příkazem SET transaction_read_only = off. Bezpečnostní hranicí jsou výhradně oprávnění role.
Jak to řeší Aderlo Cloud
| Úroveň přístupu agenta | Co agent smí | Co nesmí |
|---|---|---|
| žádný (výchozí) | Databázi nevidí | — |
| čtení | SELECT nad tabulkami a pohledy, i nad těmi vytvořenými později | Cokoli zapsat, ani po vypnutí režimu jen pro čtení v relaci |
| plný | Zápis, vytváření a úpravy tabulek | Převzít roli vlastníka, měnit hesla, zakládat databáze, číst soubory serveru |
- Agent vidí jen databáze služby, pro kterou byl token vydán — token předaný člověku, který pracuje na jednom webu, neotevře zbytek.
- Do protokolu volání se zapisuje název databáze, nikdy obsah SQL ani data.
- Nástroje MCP:
list_database_access,db_schema,db_query— stejné pro MySQL i PostgreSQL.
Co dalšího má databáze PostgreSQL v Aderlo Cloud
- PostgreSQL 18 ve vlastním kontejneru pro každou instanci, se samostatnými limity paměti, procesoru a disku.
- Rozšíření hned k dispozici: pgvector, PostGIS, pg_cron, pg_net, pg_stat_statements a důvěryhodná rozšíření z contrib (pg_trgm, pgcrypto, uuid-ossp, citext, hstore). Nové databáze dědí pgvector a PostGIS.
- Webhooky z databáze: změna v tabulce může zavolat HTTP adresu, např. workflow v n8n.
- Jen TLS (ověřeno
verify-full, TLS 1.3) a jen z adres, které povolíte — až 5 adres na instanci. - PgBouncer v transakčním režimu pro serverless aplikace; samostatná přímá adresa pro migrace.
- Zálohy: výpis každé databáze a rolí, obnovitelný na čistý server včetně rozšíření, úloh pg_cron a přístupů agentů.
- Hotové návody pro připojení v panelu: Prisma, Drizzle, node-postgres, psql, DBeaver, n8n.
Kdy dát agentovi čtení a kdy plný přístup
- Čtení: analytika, zprávy, odpovědi na otázky nad daty, kontrola kvality dat. Dobrá výchozí volba pro produkční databáze.
- Plný: agent staví vlastní schéma (např. tabulku s vektory pro vyhledávání), migrace v pracovní databázi, úklid jako práce, kterou mu zadáte.
- Žádný: databáze s osobními údaji zákazníků, do kterých agent nemá důvod nahlížet.
Časté otázky
- Může AI agent smazat moji databázi PostgreSQL?
- Při úrovni „čtení“ agent nemůže nic změnit. Při úrovni „plný“ může v databázi měnit a mazat tabulky, ale nepřevezme roli vlastníka, nezmění hesla a nezaloží nové databáze — proto plný přístup dávejte k pracovním databázím a před větší prací agenta udělejte zálohu.
- Můžu se k databázi připojit z Vercelu?
- Ano, přes TLS z adres povolených na seznamu. Vercel bez pevných IP adres mění odchozí adresy, takže je pak potřeba seznam aktualizovat, nebo použít placenou pevnou IP na straně Vercelu.