Agent AI może bezpiecznie pracować na bazie PostgreSQL, jeśli uprawnienia egzekwuje sama baza, a nie parser po stronie aplikacji: rola tylko z prawem SELECT do odczytu, osobna rola do zapisu bez możliwości przejęcia konta właściciela, dostęp włączany osobno dla każdej bazy. W Aderlo Cloud każda baza PostgreSQL 18 ma przełącznik dostępu agenta (brak / odczyt / pełny, domyślnie brak), połączenia tylko po TLS z adresów z Twojej listy oraz rozszerzenia pgvector, PostGIS i pg_cron.
Dlaczego agentowi nie wystarczy hasło do bazy
Najprostsze rozwiązanie — dać agentowi connection string właściciela bazy — oznacza, że agent może wszystko: usunąć tabelę, zmienić hasło, wyczyścić dane. Ustawienie „tylko do odczytu” na poziomie sesji niczego nie chroni, bo w PostgreSQL sesja zdejmuje je jednym poleceniem SET transaction_read_only = off. Granicą bezpieczeństwa są wyłącznie uprawnienia roli.
Jak to rozwiązuje Aderlo Cloud
| Poziom dostępu agenta | Co agent może | Czego nie może |
|---|---|---|
| brak (domyślnie) | Nie widzi bazy | — |
| odczyt | SELECT na tabelach i widokach, także tych utworzonych później | Zapisać czegokolwiek, nawet po zdjęciu trybu tylko do odczytu w sesji |
| pełny | Zapis, tworzenie i zmiana tabel | Przejąć roli właściciela, zmienić hasła, założyć bazy, czytać pliki serwera |
- Agent widzi tylko bazy usługi, dla której wydano token — token przekazany osobie pracującej przy jednej stronie nie otwiera reszty.
- W dzienniku wywołań zapisywana jest nazwa bazy, nigdy treść SQL ani dane.
- Narzędzia MCP:
list_database_access,db_schema,db_query— te same dla MySQL i PostgreSQL.
Co jeszcze ma baza PostgreSQL w Aderlo Cloud
- PostgreSQL 18 we własnym kontenerze dla każdej instancji, z osobnymi limitami pamięci, procesora i dysku.
- Rozszerzenia od razu: pgvector, PostGIS, pg_cron, pg_net, pg_stat_statements oraz zaufane z contrib (pg_trgm, pgcrypto, uuid-ossp, citext, hstore). Nowe bazy dziedziczą pgvector i PostGIS.
- Webhooki z bazy: zmiana w tabeli może wywołać adres HTTP, np. przepływ n8n.
- Tylko TLS (sprawdzone
verify-full, TLS 1.3) i tylko z adresów, które dopuścisz — do 5 adresów na instancję. - PgBouncer w trybie transakcyjnym dla aplikacji serverless; osobny adres bezpośredni do migracji.
- Kopie: zrzut każdej bazy i ról, odtwarzany do świeżego serwera razem z rozszerzeniami, zadaniami pg_cron i dostępem agentów.
- Gotowe przepisy połączenia w panelu: Prisma, Drizzle, node-postgres, psql, DBeaver, n8n.
Kiedy dać agentowi odczyt, a kiedy pełny dostęp
- Odczyt: analityka, raporty, odpowiadanie na pytania o dane, sprawdzanie jakości danych. To dobry domyślny wybór dla baz produkcyjnych.
- Pełny: agent buduje własny schemat (np. tabelę z wektorami do wyszukiwania), migracje w bazie roboczej, porządki zleconą przez Ciebie pracą.
- Brak: bazy z danymi osobowymi klientów, do których agent nie ma powodu zaglądać.
Najczęstsze pytania
- Czy agent AI może usunąć moją bazę PostgreSQL?
- Przy poziomie „odczyt” agent nie może niczego zmienić. Przy poziomie „pełny” może zmieniać i usuwać tabele w bazie, ale nie przejmie roli właściciela, nie zmieni haseł i nie założy nowych baz — dlatego pełny dostęp dawaj do baz roboczych, a przed większą pracą agenta zrób kopię.
- Czy mogę połączyć bazę z Vercela?
- Tak, przez TLS z adresów dopuszczonych na liście. Vercel bez stałych adresów IP zmienia adresy wyjściowe, więc wtedy trzeba aktualizować listę albo użyć płatnego stałego IP po stronie Vercela.