Twoja instancja Cloud SQL nie ma publicznego adresu IP.
Sięgnij po nią po nazwie, bez maszyny bastionowej.
AgentsRoom uruchamia Cloud SQL Auth Proxy, gdy otwierasz połączenie, i kieruje na niego swojego klienta bazy danych. Podajesz nazwę połączenia z instancją, project:region:instance, albo wybierasz ją z listy, którą widzi Twoje własne logowanie gcloud.
Proxy jest autoryzowane przez Twoje Application Default Credentials, więc AgentsRoom nie przechowuje klucza konta usługi. Z uwierzytelnianiem bazy danych przez IAM nie ma też hasła do bazy. A agent AI do kodowania może odpytać tę samą instancję, w trybie tylko do odczytu.
Jak AgentsRoom sięga po instancję Cloud SQL przez jej prywatny adres IP za pomocą Cloud SQL Auth Proxy, bez niczego przechowywanego po stronie aplikacji.
Instancja Cloud SQL wyłącznie z prywatnym adresem IP to słuszna konfiguracja i niewygodna zarazem. Baza żyje w Twoim VPC, jej publiczny adres IP jest wyłączony, a dostać się do niej mogą tylko maszyny wewnątrz tej sieci. A tu trzeba zajrzeć do trzech wierszy, żeby zrozumieć błąd, i to z laptopa.
Google ma już na to odpowiedź: Cloud SQL Auth Proxy. Otwiera zaszyfrowane połączenie z instancją, autoryzowane Twoją tożsamością Google, a nie listą dozwolonych adresów IP, i udostępnia je jako lokalny port. Uciążliwe jest wszystko wokół: instalacja, pamiętanie nazwy połączenia z instancją, uruchamianie proxy w terminalu przed otwarciem klienta i zapominanie o nim potem.
AgentsRoom bierze to na siebie. W polu Połącz przez w połączeniu z bazą wybierasz Google Cloud SQL, podajesz instancję, zaznaczasz Prywatny adres IP albo Uwierzytelnianie bazy danych przez IAM, jeśli ich potrzebujesz, i od tej chwili otwarcie bazy to jedno kliknięcie. Proxy startuje razem z połączeniem i kończy razem z nim.
Zwykłe obejścia zawsze coś kosztują
Trzy odpowiedzi na ten sam problem i cena, jaką każda z nich każe zapłacić.
Maszyna bastionowa tylko do tego
Maszyna Compute Engine z portem SSH, trzymana w VPC wyłącznie po to, by ktoś mógł od czasu do czasu zrobić tunel do bazy. Trzeba ją łatać, kosztuje co godzinę, a jej klucze SSH i reguły zapory rozjeżdżają się wraz ze zmianami w zespole.
Publiczny adres IP i lista dozwolonych
Włączenie publicznego adresu IP i dodanie domowego adresu do autoryzowanych sieci działa do momentu, gdy adres się zmieni, a w międzyczasie baza nasłuchuje w internecie. To wyjątek, który nigdy nie zostaje usunięty.
Klucz konta usługi na laptopie
Pobranie klucza JSON, żeby uruchomić proxy, to skrót, którego żałuje każdy: długo żyjące dane logowania w folderze Pobrane, skopiowane do skryptów i promptów, których nikt nie rotuje i nikt nie potrafi wyśledzić.
Od prywatnej instancji Cloud SQL do zbioru wyników
Cztery kroki, raz wykonane, a potem to już jedno kliknięcie.
Zaloguj się przez gcloud, raz
Uruchom na swojej maszynie gcloud auth application-default login. Utworzone w ten sposób Application Default Credentials proxy wykorzystuje, by dotrzeć do instancji. AgentsRoom niczego z tego nie czyta i niczego nie przechowuje.
Wybierz instancję w polu Połącz przez
Utwórz połączenie MySQL lub PostgreSQL i wybierz Google Cloud SQL w polu Połącz przez. Wpisz nazwę połączenia z instancją, project:region:instance, albo kliknij Pokaż moje instancje, by wybrać ją spośród tych, które widzi Twoje logowanie gcloud. Host i port znikają: adresem jest instancja.
Wybierz prywatny adres IP i uwierzytelnianie IAM
Zaznacz Prywatny adres IP, gdy instancja nie ma publicznego adresu, a Twoja maszyna sięga do jej VPC przez VPN lub Interconnect. Zaznacz Uwierzytelnianie bazy danych przez IAM, by logować się swoją tożsamością Google: pole hasła znika, a użytkownikiem jest Twój użytkownik bazy IAM.
Odpytaj ją sam albo pozwól agentowi
Otwarcie połączenia rezerwuje wolny port loopback, uruchamia na nim cloud-sql-proxy i czeka, aż zacznie przyjmować połączenie TCP. Konsola łączy się z 127.0.0.1 jak z każdym innym połączeniem, a agent AI może odpytać bazę przez MCP, tylko do odczytu. Zamknięcie połączenia zatrzymuje proxy.
Polecenie, które uruchamia AgentsRoom
Nic nie jest reimplementowane. AgentsRoom uruchamia jako proces potomny oryginalny plik binarny cloud-sql-proxy od Google (wersja 2), przekazując argumenty bezpośrednio, a nie przez powłokę. Jeśli kiedykolwiek uruchamiałeś proxy ręcznie, to jest ta sama linijka, którą już znasz.
cloud-sql-proxy acme-prod:europe-west1:orders \
--address 127.0.0.1 --port 54321 \
--private-ip \
--auto-iam-authnInstancja i dwie opcje pochodzą z zapisanego przez Ciebie połączenia. Port lokalny wybiera system operacyjny w chwili otwarcia.
Proxy przyjmuje lokalne połączenie, zanim cokolwiek sprawdzi, a potem je zrywa i zapisuje w logu, co jest nie tak. AgentsRoom czyta ten log i podaje prawdziwą przyczynę: proxy nie jest zainstalowane, logowanie gcloud wygasło (razem z poleceniem do uruchomienia), konto nie ma roli Cloud SQL Client, instancja nie ma prywatnego adresu IP albo nazwa instancji jest błędna.
Co musi być spełnione, zanim to zadziała
AgentsRoom obsługuje Twoją konfigurację Google Cloud, a nie ją zastępuje. To te same rzeczy, których proxy potrzebuje samo z siebie.
cloud-sql-proxy na Twojej maszynie
Wersja 2 Cloud SQL Auth Proxy, dostępna w PATH. Najszybciej zainstalujesz ją przez gcloud components install cloud-sql-proxy; Google udostępnia ją też jako samodzielne pobranie. Jeśli jej brakuje, AgentsRoom to mówi i podaje polecenie.
Application Default Credentials
gcloud auth application-default login, uruchomione raz. Gdy to logowanie wygaśnie, błąd każe Ci uruchomić je ponownie, zamiast pokazywać zamknięte gniazdo.
Rola Cloud SQL Client
Twoje konto Google potrzebuje roli Cloud SQL Client w projekcie instancji, a Cloud SQL Admin API musi być tam włączone. Uwierzytelnianie bazy danych przez IAM wymaga dodatkowo roli Cloud SQL Instance User i użytkownika IAM na instancji.
gcloud do listy wyboru
Pokaż moje instancje uruchamia gcloud sql instances list w Twoim aktywnym projekcie albo w projekcie, który zacząłeś wpisywać. Bez gcloud nadal możesz wpisać nazwę połączenia ręcznie.
Trasa do VPC dla prywatnego adresu IP
Prywatny adres IP oznacza, że sama Twoja maszyna musi dosięgnąć VPC instancji, przez VPN, Interconnect albo maszynę wewnątrz sieci. Bez takiej trasy zostaw Prywatny adres IP wyłączony i użyj publicznego adresu z szyfrowaniem proxy.
Co proxy robi, a czego odmawia
Właściwości, które decydują, czy można je bezpiecznie zostawić skonfigurowane na laptopie.
Tylko loopback
Proxy nasłuchuje na 127.0.0.1 i nigdzie więcej. Baza nigdy nie jest ponownie wystawiana w sieci lokalnej, więc Wi-Fi w kawiarni nie staje się drogą do produkcji.
Port wybrany przez system
AgentsRoom prosi system operacyjny o wolny port i przekazuje go proxy. Żadnego stałego portu do zapamiętania, żadnej kolizji z innym proxy uruchomionym ręcznie.
Gotowe znaczy gotowe
Połączenie otwiera się dopiero wtedy, gdy port lokalny przyjmuje TCP, a proxy, które od razu się zamyka, zgłasza powód, który wypisało. Bez arbitralnego sleepa, bez klienta łączącego się za wcześnie.
Bez przechowywanego klucza
Proxy jest autoryzowane przez Twoje Application Default Credentials. AgentsRoom przechowuje nazwę połączenia z instancją i dwie opcje, z których żadna nie jest daną logowania, a klucz konta usługi nigdy nie trafia do aplikacji.
Baza pozostaje tylko do odczytu
Połączenie z bazą jest tworzone jako tylko do odczytu. Zapis wymaga, by połączenie zostało uczynione zapisywalnym, oraz wyraźnego potwierdzenia, głośniejszego przy połączeniu oznaczonym jako produkcyjne.
Jedno polecenie na wywołanie
Każde wywołanie niesie dokładnie jedno polecenie, więc nic nie chowa się za średnikiem, a zbiory wyników są ograniczone, by szerokie zapytanie nie zalało okna ani kontekstu agenta.
Dlaczego to mniej dostępu, a nie więcej
Po stronie instancji nie zostaje otwarte nic. Publiczny adres IP może pozostać wyłączony, żadna sieć nie trafia na listę autoryzowanych, a maszyna z portem SSH nie musi żyć na wypadek okazjonalnego zapytania. Proxy szyfruje połączenie z instancją od końca do końca.
Autoryzacja zostaje tam, gdzie zarządza nią Twoja organizacja: w Twojej tożsamości Google i jej rolach IAM. Dostęp nadany tej tożsamości jest logowany jak każde inne połączenie z Cloud SQL i kończy się w dniu, w którym rola zostanie odebrana. AgentsRoom zachowuje nazwę instancji, wybór Prywatnego adresu IP i wybór IAM, i nic, co mógłby odtworzyć ktoś, kto te dane przeczyta.
Po stronie bazy obowiązują te same zabezpieczenia co w każdym połączeniu AgentsRoom: domyślnie tylko do odczytu, jedno polecenie na wywołanie, ograniczone zbiory wyników i flaga produkcji, która zaostrza potwierdzenie zapisu. Agent AI odpytujący bazę przez MCP dostaje zbiór wyników, nigdy danych logowania, i nie może zapisywać, dopóki nie uczynisz połączenia zapisywalnym i nie włączysz dla niego opcji Zezwól agentom na zapis.
MySQL i PostgreSQL, na razie bez SQL Server
Cloud SQL obsługuje MySQL, PostgreSQL i SQL Server. AgentsRoom sięga przez proxy po pierwsze dwa i nie ma dziś klienta SQL Server. AlloyDB, który ma własne proxy, również nie jest objęty.
O tym, który silnik albo usługa będzie następna, decyduje to, o co proszą użytkownicy. Jeśli Twojego brakuje, napisz w publicznym backlogu którego, a zostanie policzony.
Poproś o swój silnik bazy danychAgent też może ją odpytać, tylko do odczytu
Gdy połączenie już istnieje, agent AI do kodowania używa go przez AgentsRoom MCP, podając jego nazwę: db_list, db_schema do przejrzenia tabel i kolumn, db_query dla jednego polecenia z ograniczoną liczbą wierszy. Agent może też sam zarejestrować połączenie z Cloud SQL przez db_connection_new lub db_connection_save, podając nazwę połączenia z instancją.
AgentsRoom sam uruchamia proxy, gdy agent o to prosi, więc agent nigdy nie dotyka danych logowania Google, hasła do bazy ani numeru portu. Wraca tylko zbiór wyników. Zapis wymaga połączenia zapisywalnego i ustawienia Zezwól agentom na zapis, domyślnie wyłączonego.
Agent debugujący na produkcyjnej replice czyta wiersze, które wyjaśniają błąd, bez danych logowania, które mogłyby wyciec do jego kontekstu, i bez drogi do bazy po zamknięciu aplikacji.
FAQ
Jak połączyć się z instancją Cloud SQL, która ma tylko prywatny adres IP?
Utwórz połączenie MySQL lub PostgreSQL, wybierz Google Cloud SQL w polu Połącz przez, podaj nazwę połączenia z instancją i zaznacz Prywatny adres IP. AgentsRoom uruchamia Cloud SQL Auth Proxy z --private-ip na porcie loopback i podłącza do niego swojego klienta. Twoja maszyna musi sięgać do VPC instancji, na przykład przez VPN lub Interconnect.
Czy AgentsRoom przechowuje klucz konta usługi?
Nie. Proxy jest autoryzowane przez Application Default Credentials, które utworzyło gcloud auth application-default login na Twojej maszynie. AgentsRoom przechowuje nazwę połączenia z instancją i dwie opcje, z których żadna nie jest daną logowania.
Czy mogę połączyć się bez hasła do bazy?
Tak, dzięki uwierzytelnianiu bazy danych przez IAM. Zaznacz je w połączeniu, a proxy uruchomi się z --auto-iam-authn: zaloguje się Twoją tożsamością Google, pole hasła zniknie, a użytkownikiem będzie Twój użytkownik bazy IAM. Instancja musi mieć włączone uwierzytelnianie IAM, a ten użytkownik musi być utworzony.
Co muszę mieć zainstalowane?
Cloud SQL Auth Proxy w wersji 2 (gcloud components install cloud-sql-proxy albo samodzielne pobranie od Google) oraz logowanie gcloud dla Application Default Credentials. Samo gcloud jest potrzebne tylko do przycisku Pokaż moje instancje.
Co się dzieje, gdy moje logowanie gcloud wygaśnie?
Proxy odrzuca połączenie i zapisuje powód w logu. AgentsRoom czyta ten log i pokazuje zrozumiały komunikat z prośbą o uruchomienie gcloud auth application-default login, zamiast gołego błędu połączenia. Potem ponawiasz próbę.
Jaki port lokalny jest używany i kto może po niego sięgnąć?
System operacyjny wybiera wolny port w chwili otwarcia połączenia, a proxy nasłuchuje wyłącznie na 127.0.0.1. Nic w sieci lokalnej nie może do niego dotrzeć, a proxy zatrzymuje się po zamknięciu połączenia albo zamknięciu aplikacji.
Które silniki Cloud SQL są obsługiwane?
Cloud SQL for MySQL i Cloud SQL for PostgreSQL. Cloud SQL for SQL Server nie jest obsługiwany, bo AgentsRoom nie ma jeszcze klienta SQL Server; poproś o niego w publicznym backlogu, a zostanie policzony.
Czy działa na Windows i Linux?
Tak. cloud-sql-proxy to natywny plik binarny na macOS, Windows i Linux, a AgentsRoom uruchamia go tak samo na wszystkich trzech. Aplikacja mobilna pokazuje te same połączenia i odpytuje je tylko do odczytu przez Twój komputer.
Czy agent AI może odpytać bazę przez proxy?
Tak, domyślnie tylko do odczytu. Agent podaje nazwę zapisanego połączenia przez AgentsRoom MCP, aplikacja sama uruchamia proxy i wykonuje polecenie, a wraca wyłącznie zbiór wyników. Agent nigdy nie dostaje danych logowania Google ani hasła do bazy, a db_query odrzuca wszystko poza odczytem, chyba że połączenie jest zapisywalne i włączyłeś dla niego Zezwól agentom na zapis.
Może Ci się spodobać
Połączenia z bazami danych
Zapisuj swoje połączenia MySQL, PostgreSQL i MongoDB, sięgaj po bazę w prywatnej podsieci przez tunel SSH albo sesję AWS SSM i pozwól agentom AI odpytywać ją przez MCP. Domyślnie tylko do odczytu, jedno polecenie na wywołanie, ograniczone zbiory wyników, a hasło nigdy nie trafia do agenta. Eksport, import i kopiowanie jednej bazy wprost na drugą w komplecie.
RDS przez AWS SSM
Sięgnij po instancję Amazon RDS bez publicznego endpointu, z własnej maszyny, przez aws ssm start-session i dokument AWS-StartPortForwardingSessionToRemoteHost. Bez bastionu do utrzymania, bez VPN, bez reguły przychodzącej dla SSH. AgentsRoom otwiera sesję na porcie loopback i przez nią podłącza swojego klienta bazy danych. MySQL, PostgreSQL i MongoDB, czyli RDS MySQL, RDS PostgreSQL, Aurora i DocumentDB.
Menedżer sekretów
Przechowuj klucze API, tokeny i hasła w pęku kluczy swojego systemu, odwołuj się do nich przez {{secret:NAME}} w komendach dev i środowiskach agentów, a AgentsRoom rozwiąże je przy starcie. Agenci widzą nazwy, nigdy wartości, i nic nie jest synchronizowane z serwerem.
Połączenia SSH
Zapisuj swoje połączenia SSH, otwieraj wbudowany terminal po SSH i uruchamiaj Claude Code, Codex lub Antigravity CLI bezpośrednio na zdalnym serwerze czy VPS. Uwierzytelnianie kluczem SSH lub hasłem, profile połączeń per projekt, bez osobnego klienta SSH.
Odpytaj swoją prywatną instancję Cloud SQL
Pobierz AgentsRoom, wybierz instancję Cloud SQL i odpytuj ją przez Cloud SQL Auth Proxy ze swoim własnym logowaniem gcloud: bez maszyny bastionowej, bez publicznego adresu IP, bez klucza na dysku.
Aplikacja towarzysząca: monitoruj agentów w podróży
Użyj Claude, Codex, Antigravity CLI lub innego dostawcy AI.
Wysyłaj bugi i prośby bezpośrednio do swojego publicznego backlogu.