Connettiti a Cloud SQL per PostgreSQL utilizzando il proxy di autenticazione Cloud SQL
Questa pagina mostra come connettersi a Cloud SQL da un ambiente di test locale utilizzando il proxy di autenticazione Cloud SQL. Il proxy di autenticazione Cloud SQL fornisce accesso sicuro all'istanza Cloud SQL senza la necessità di reti autorizzate o di configurare SSL. Utilizzando il proxy di autenticazione Cloud SQL, puoi connetterti in modo sicuro alla tua istanza Cloud SQL.
Le istruzioni riportate in questa pagina sono solo per un ambiente di test e non devono essere utilizzate per gli ambienti di produzione. Per ulteriori informazioni sulla configurazione richiesta per gli ambienti di produzione, consulta Utilizzare il proxy di autenticazione Cloud SQL in un ambiente di produzione e Connessione tramite il proxy di autenticazione Cloud SQL.
Prima di iniziare
- Accedi al tuo account Google Cloud . Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti senza costi per l'esecuzione, il test e il deployment dei carichi di lavoro.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Abilita le API Google Cloud necessarie.
Console
Nella console Google Cloud , vai alla pagina API.
Abilita l'API Cloud SQL Admin.gcloud
Fai clic sul pulsante seguente per aprire Cloud Shell, che fornisce l'accesso da riga di comando alle tue risorse Google Cloud direttamente dal browser. Cloud Shell può essere utilizzato per eseguire i comandi
gcloudpresentati in questa guida rapida.Esegui il comando
gcloud services enablecome segue utilizzando Cloud Shell per abilitare le API richieste per questa guida rapida:gcloud services enable sqladmin.googleapis.com
Questo comando abilita le seguenti API:
- API Cloud SQL Admin
-
Assicurati di disporre del seguente ruolo o ruoli nel progetto: Amministratore Cloud SQL (
roles/cloudsql.admin)Controlla i ruoli
-
Nella console Google Cloud vai alla pagina IAM.
Vai a IAM - Seleziona il progetto.
-
Nella colonna Entità, trova tutte le righe che identificano te o un gruppo di cui fai parte. Per scoprire a quali gruppi appartieni, contatta il tuo amministratore.
- Per tutte le righe che ti specificano o ti includono, controlla la colonna Ruolo per verificare se l'elenco dei ruoli include i ruoli richiesti.
Concedi i ruoli
-
Nella console Google Cloud vai alla pagina IAM.
Vai a IAM - Seleziona il progetto.
- Fai clic su Concedi l'accesso.
-
Nel campo Nuove entità, inserisci il tuo identificatore dell'utente. In genere si tratta dell'indirizzo email di un Account Google.
- Fai clic su Seleziona un ruolo, quindi cerca il ruolo.
- Per concedere altri ruoli, fai clic su Aggiungi un altro ruolo e aggiungi ogni ruolo successivo.
- Fai clic su Salva.
-
Crea un'istanza Cloud SQL
In questa guida rapida utilizzi la console Google Cloud . Per utilizzare gcloud CLI, curl o PowerShell, consulta Creare istanze.
-
Nella console Google Cloud , vai alla pagina Istanze Cloud SQL.
- Fai clic su Crea istanza.
- Dal menu Crea istanza, seleziona Nuova istanza.
- Fai clic su Scegli PostgreSQL.
- Nel campo ID istanza, inserisci
myinstance. - Nel campo Password, inserisci una password per l'utente
postgres. Fai clic su Crea istanza.
Viene visualizzato di nuovo l'elenco delle istanze. Puoi fare clic sulla nuova istanza subito per visualizzare i dettagli, ma non sarà disponibile per altre operazioni finché non viene inizializzata e avviata.
Debian/Ubuntu
Installa il client psql dal gestore di pacchetti:
sudo apt-get update sudo apt-get install postgresql-client
CentOS/RHEL
Installa il client psql dal gestore di pacchetti:
sudo yum install postgresql
openSUSE
Installa il client psql dal gestore di pacchetti:
sudo zypper install postgresql
Altre piattaforme
- Scarica la distribuzione principale di PostgreSQL per la tua piattaforma dalla
pagina dei download di PostgreSQL.
La distribuzione di base include il client psql. - Installa il database PostgreSQL seguendo le istruzioni nella pagina di download.
Installa il client proxy di autenticazione Cloud SQL
Il file binario del proxy di autenticazione Cloud SQL che scarichi dipende dal sistema operativo e dal fatto che utilizzi un kernel a 32 bit o a 64 bit. La maggior parte degli hardware più recenti utilizza un kernel a 64 bit. Se non sai se la tua macchina esegue un kernel a 32 bit o a 64 bit, utilizza il comando uname -a per Linux o macOS. Per Windows, consulta la documentazione di Windows.
Prima di iniziare, devi determinare l'architettura della tua macchina.
Se esegui l'operazione su Linux o Mac, puoi trovare questo valore eseguendo il seguente comando:
uname -a
Linux a 64 bit
- Scarica il proxy di autenticazione Cloud SQL:
curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.22.0/cloud-sql-proxy.linux.amd64
- Rendi eseguibile il proxy di autenticazione Cloud SQL:
chmod +x cloud-sql-proxy
Linux a 32 bit
- Scarica il proxy di autenticazione Cloud SQL:
curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.22.0/cloud-sql-proxy.linux.386
- Se il comando
curlnon viene trovato, eseguisudo apt install curle ripeti il comando di download. - Rendi eseguibile il proxy di autenticazione Cloud SQL:
chmod +x cloud-sql-proxy
macOS a 64 bit
- Scarica il proxy di autenticazione Cloud SQL:
curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.22.0/cloud-sql-proxy.darwin.amd64
- Rendi eseguibile il proxy di autenticazione Cloud SQL:
chmod +x cloud-sql-proxy
Mac M1
- Scarica il proxy di autenticazione Cloud SQL:
curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.22.0/cloud-sql-proxy.darwin.arm64
- Rendi eseguibile il proxy di autenticazione Cloud SQL:
chmod +x cloud-sql-proxy
Windows a 64 bit
Fai clic con il tasto destro del mouse su https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.22.0/cloud-sql-proxy.x64.exe e seleziona Salva link con nome per scaricare il proxy di autenticazione Cloud SQL. Rinomina il file incloud-sql-proxy.exe.
Windows a 32 bit
Fai clic con il tasto destro del mouse su https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.22.0/cloud-sql-proxy.x86.exe e seleziona Salva link con nome per scaricare il proxy di autenticazione Cloud SQL. Rinomina il file incloud-sql-proxy.exe.
Immagine Docker del proxy di autenticazione Cloud SQL
Il proxy di autenticazione Cloud SQL ha immagini container diverse, ad esempio distroless, alpine e buster. L'immagine container del proxy di autenticazione Cloud SQL predefinita utilizza
distroless, che
non contiene alcuna shell. Se hai bisogno di una shell o di strumenti correlati, scarica un'immagine basata su
alpine o buster.
Per maggiori informazioni, vedi
Immagini container del proxy di autenticazione Cloud SQL.
Puoi eseguire il pull dell'ultima immagine sulla tua macchina locale utilizzando Docker con il seguente comando:
docker pull gcr.io/cloud-sql-connectors/cloud-sql-proxy:2.22.0
Altri sistemi operativi
Per altri sistemi operativi non inclusi qui, puoi compilare il proxy di autenticazione Cloud SQL dal codice sorgente.Recuperare il nome connessione dell'istanza
-
Nella console Google Cloud , vai alla pagina Istanze Cloud SQL.
- Fai clic sul nome dell'istanza per aprire la pagina Panoramica.
- Nella sezione Connetti a questa istanza, copia il Nome connessione. Il nome
della connessione è nel formato
projectID:region:instanceID.
Avvia il proxy di autenticazione Cloud SQL
Avvia il proxy di autenticazione Cloud SQL nel proprio terminale per monitorarne l'output. Sostituisci
INSTANCE_CONNECTION_NAME con il nome connessione dell'istanza che hai copiato
nel passaggio precedente.
Per gli ambienti Linux, utilizza questo comando per avviare il proxy di autenticazione Cloud SQL:
./cloud-sql-proxy INSTANCE_CONNECTION_NAMEIn PowerShell su Windows, utilizza questo comando per avviare il proxy di autenticazione Cloud SQL:
.\cloud-sql-proxy.exe INSTANCE_CONNECTION_NAME
Viene visualizzato un messaggio simile al seguente:
Listening on 127.0.0.1:5432 for INSTANCE_CONNECTION_NAME Ready for new connections
Esegui il seguente comando dopo aver sostituito DB_NAME con il nome del database Cloud SQL:
psql "host=127.0.0.1 port=5432 sslmode=disable dbname=DB_NAME user=postgres"
Al prompt Enter password: (Inserisci password:), inserisci la password del tuo account PostgreSQL.
Verifica che venga visualizzato il prompt PostgreSQL. Ti sei connesso al database utilizzando il client psql.
Torna alla finestra del terminale in cui hai avviato il proxy di autenticazione Cloud SQL. Dovresti visualizzare un messaggio simile al seguente:
New connection for myInstance
Esegui la pulizia
Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questa pagina, segui questi passaggi.
-
Nella console Google Cloud , vai alla pagina Istanze Cloud SQL.
- Seleziona l'istanza
myinstanceper aprire la pagina Dettagli istanza. - Nella barra delle icone nella parte superiore della pagina, fai clic su Elimina.
- Nella finestra Elimina istanza, digita il nome dell'istanza e fai clic su Elimina.
Passaggi di pulizia facoltativi
Se non utilizzi le API attivate nell'ambito di questa guida rapida, puoi disattivarle.
- API abilitate in questa guida rapida:
- API Cloud SQL Admin
Nella console Google Cloud , vai alla pagina API.
Seleziona l'API Cloud SQL Admin e poi fai clic sul pulsante Disabilita API.
Passaggi successivi
Scopri come risolvere i problemi relativi al proxy di autenticazione Cloud SQL.
Scopri di più sul proxy di autenticazione Cloud SQL.
- Scopri di più su altre opzioni di connessione.