In questa pagina viene descritto come gestire i certificati CA client e server.
Gestisci i certificati client
Utilizza le seguenti procedure per gestire i certificati client in Cloud SQL.
Recupera un certificato client
Puoi recuperare la parte della chiave pubblica di un certificato client. Tuttavia, non puoi recuperare la chiave privata. Se hai perso la chiave privata, devi creare un nuovo certificato.
Console
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL .
Vai a Istanze Cloud SQL
Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
Seleziona Connections (Connessioni) dal menu di navigazione SQL.
Seleziona la scheda Sicurezza .
In Gestisci i certificati client , fai clic sul nome di un certificato.
La pagina Certificato client SSL si apre e mostra il certificato client (client-cert.pem
) con un link per scaricarlo.
gcloud
Recupera la chiave pubblica del certificato client con il comando
ssl client-certs describe
:
gcloud sql ssl client-certs describe CERT_NAME \
--instance=INSTANCE_NAME \
--format="value(cert)" > client-cert.pem
REST v1
Elenca i certificati dell'istanza per ottenere l'impronta del certificato che vuoi recuperare:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
Metodo HTTP e URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#sslCertsList",
"items": [
{
"kind": "sql#sslCert",
"certSerialNumber": "cert-serial-number ",
"cert": "cert-value ",
"commonName": "ca-server-name ",
"sha1Fingerprint": "sha1Fingerprint "
"instance": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint ",
"createTime": "2020-02-13T00:10:20.595Z",
"expirationTime": "2030-02-10T00:11:20.595Z"
}
]
}
Registra il campo sha1Fingerprint
per il certificato che vuoi recuperare. Non inserire le virgolette.
Recupera il certificato:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
sha1FingerPrint : sha1FingerPrint del certificato
Metodo HTTP e URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint "
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint " | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#sslCert",
"certSerialNumber": "cert-serial-number ",
"cert": "cert-value ",
"commonName": "ca-server-name ",
"sha1Fingerprint": "sha1Fingerprint "
"instance": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint ",
"createTime": "2020-02-13T00:10:20.595Z",
"expirationTime": "2030-02-10T00:11:20.595Z"
}
Copia in un file tutti i dati del certificato contenuti tra virgolette, ad esempio client-cert.pem
. Non copiare le virgolette stesse.
REST v1beta4
Elenca i certificati dell'istanza per ottenere l'impronta del certificato che vuoi recuperare:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
Metodo HTTP e URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#sslCertsList",
"items": [
{
"kind": "sql#sslCert",
"certSerialNumber": "cert-serial-number ",
"cert": "cert-value ",
"commonName": "ca-server-name ",
"sha1Fingerprint": "sha1Fingerprint "
"instance": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint ",
"createTime": "2020-02-13T00:10:20.595Z",
"expirationTime": "2030-02-10T00:11:20.595Z"
}
]
}
Registra il campo sha1Fingerprint
per il certificato che vuoi recuperare. Non inserire le virgolette.
Recupera il certificato:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
sha1FingerPrint : sha1FingerPrint del certificato
Metodo HTTP e URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint "
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint " | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#sslCert",
"certSerialNumber": "cert-serial-number ",
"cert": "cert-value ",
"commonName": "ca-server-name ",
"sha1Fingerprint": "sha1Fingerprint "
"instance": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint ",
"createTime": "2020-02-13T00:10:20.595Z",
"expirationTime": "2030-02-10T00:11:20.595Z"
}
Copia in un file tutti i dati del certificato contenuti tra virgolette, ad esempio client-cert.pem
. Non copiare le virgolette stesse.
Elimina un certificato client
Quando elimini un certificato client, il server di database viene aggiornato e non deve essere riavviato.
Console
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL .
Vai a Istanze Cloud SQL
Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
Seleziona Connections (Connessioni) dal menu di navigazione SQL.
Seleziona la scheda Sicurezza .
In Gestisci i certificati client , trova il certificato che vuoi eliminare e fai clic su .
Nel riquadro Elimina certificato client , fai clic su OK .
gcloud
Elimina il certificato client utilizzando il comando
ssl client-certs delete :
gcloud sql ssl client-certs delete CERT_NAME \
--instance=INSTANCE_NAME
REST v1
Elenca i certificati nell'istanza per ottenere l'impronta del certificato che vuoi eliminare:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
Metodo HTTP e URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#sslCertsList",
"items": [
{
"kind": "sql#sslCert",
"certSerialNumber": "cert-serial-number ",
"cert": "cert-value ",
"commonName": "ca-server-name ",
"sha1Fingerprint": "sha1Fingerprint "
"instance": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint ",
"createTime": "2020-02-13T00:10:20.595Z",
"expirationTime": "2030-02-10T00:11:20.595Z"
}
]
}
Registra il campo sha1Fingerprint
per il certificato che vuoi eliminare. Non inserire le virgolette.
Elimina il certificato:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
sha1FingerPrint : sha1FingerPrint del certificato
Metodo HTTP e URL:
DELETE https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint "
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method DELETE ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint " | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-20T21:30:35.667Z",
"operationType": "UPDATE",
"name": "operation-id ",
"targetId": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id /operations/operation-id ",
"targetProject": "project-id "
}
REST v1beta4
Elenca i certificati nell'istanza per ottenere l'impronta del certificato che vuoi eliminare:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
Metodo HTTP e URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#sslCertsList",
"items": [
{
"kind": "sql#sslCert",
"certSerialNumber": "cert-serial-number ",
"cert": "cert-value ",
"commonName": "ca-server-name ",
"sha1Fingerprint": "sha1Fingerprint "
"instance": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint ",
"createTime": "2020-02-13T00:10:20.595Z",
"expirationTime": "2030-02-10T00:11:20.595Z"
}
]
}
Registra il campo sha1Fingerprint
per il certificato che vuoi eliminare. Non inserire le virgolette.
Elimina il certificato:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
sha1FingerPrint : sha1FingerPrint del certificato
Metodo HTTP e URL:
DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X DELETE \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint "
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method DELETE ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint " | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-20T21:30:35.667Z",
"operationType": "UPDATE",
"name": "operation-id ",
"targetId": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /operations/operation-id ",
"targetProject": "project-id "
}
Gestisci i certificati CA del server
Ruota i certificati CA del server
Se hai ricevuto una notifica relativa alla scadenza dei certificati o hai avviato una rotazione, procedi nel seguente modo per completarla:
Scarica le informazioni del nuovo certificato CA del server.
Aggiorna i client in modo che utilizzino le informazioni del nuovo certificato CA del server.
Completa la rotazione, che sposta il certificato attivo nello slot "precedente" e aggiorna il certificato appena aggiunto in modo che diventi attivo.
Dopo aver ruotato il certificato SSL, le connessioni di App Engine e del proxy di autenticazione Cloud SQL riceveranno automaticamente un nuovo certificato al momento della connessione.
Console
Scarica le informazioni del nuovo certificato CA del server:
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL .
Vai a Istanze Cloud SQL
Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
Seleziona Connections (Connessioni) dal menu di navigazione SQL.
Seleziona la scheda Sicurezza .
Fai clic per espandere Gestisci certificati .
Seleziona Ruota il certificato CA .
Se non esistono certificati idonei, l'opzione di rotazione non è disponibile.
Fai clic su Scarica certificati .
Le informazioni sul certificato CA del server, codificate come file PEM, vengono scaricate nel tuo ambiente locale:
Aggiorna tutti i client MySQL in modo da utilizzare le nuove informazioni copiando il file scaricato sui computer host dei client, sostituendo il file server-ca.pem
esistente.
Dopo aver aggiornato i clienti, completa la rotazione:
Torna alla scheda Sicurezza .
Fai clic per espandere Gestisci certificati .
Seleziona Ruota il certificato CA .
Verifica che i tuoi clienti si stiano connettendo correttamente.
Se alcuni client non si connettono utilizzando il certificato appena ruotato, puoi selezionare Esegui il rollback del certificato CA per rollback alla configurazione precedente.
gcloud
Crea un certificato CA del server:
gcloud beta sql ssl server-ca-certs create \
--instance=INSTANCE
Scarica le informazioni del certificato in un file PEM locale:
gcloud beta sql ssl server-ca-certs list \
--format="value(cert)" \
--instance=INSTANCE_NAME > \
FILE_PATH /FILE_NAME .pem
Aggiorna tutti i tuoi client in modo da utilizzare le nuove informazioni copiando il file scaricato sulle macchine host dei client e sostituendo i file server-ca.pem esistenti.
Dopo aver aggiornato i clienti, completa la rotazione:
gcloud beta sql ssl server-ca-certs rotate \
--instance=INSTANCE_NAME
Verifica che i tuoi clienti si stiano connettendo correttamente.
Se alcuni client non si connettono utilizzando il certificato appena ruotato, puoi rollback alla configurazione precedente.
REST v1
Scarica i certificati CA del server:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
Metodo HTTP e URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /listServerCas
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /listServerCas"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /listServerCas" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"certs": [
{
"kind": "sql#sslCert",
"certSerialNumber": "cert-serial-number ",
"cert": "cert-value ",
"commonName": "ca-server-name ",
"sha1Fingerprint": "sha1Fingerprint ",
"instance": "instance-id ",
"createTime": "2020-02-10T17:18:54.935Z",
"expirationTime": "2030-02-07T17:19:54.935Z"
},
{
"kind": "sql#sslCert",
certSerialNumber": "cert-serial-number ",
"cert": "cert-value ",
"commonName": "ca-server-name ",
"sha1Fingerprint": "sha1Fingerprint ",
"instance": "instance-id ",
"createTime": "2019-11-14T22:43:56.458Z",
"expirationTime": "2029-11-11T22:44:56.458Z"
}
],
"activeVersion": "active-version ",
"kind": "sql#instancesListServerCas"
}
Completa la rotazione:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
Metodo HTTP e URL:
POST https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /rotateServerCa
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d "" \ "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /rotateServerCa"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method POST ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /rotateServerCa" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-20T21:30:35.667Z",
"operationType": "UPDATE",
"name": "operation-id ",
"targetId": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id /operations/operation-id ",
"targetProject": "project-id "
}
REST v1beta4
Scarica i certificati CA del server:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
Metodo HTTP e URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /listServerCas
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /listServerCas"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /listServerCas" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"certs": [
{
"kind": "sql#sslCert",
"certSerialNumber": "cert-serial-number ",
"cert": "cert-value ",
"commonName": "ca-server-name ",
"sha1Fingerprint": "sha1Fingerprint ",
"instance": "instance-id ",
"createTime": "2020-02-10T17:18:54.935Z",
"expirationTime": "2030-02-07T17:19:54.935Z"
},
{
"kind": "sql#sslCert",
certSerialNumber": "cert-serial-number ",
"cert": "cert-value ",
"commonName": "ca-server-name ",
"sha1Fingerprint": "sha1Fingerprint ",
"instance": "instance-id ",
"createTime": "2019-11-14T22:43:56.458Z",
"expirationTime": "2029-11-11T22:44:56.458Z"
}
],
"activeVersion": "active-version ",
"kind": "sql#instancesListServerCas"
}
Completa la rotazione:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
Metodo HTTP e URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /rotateServerCa
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d "" \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /rotateServerCa"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method POST ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /rotateServerCa" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-20T21:30:35.667Z",
"operationType": "UPDATE",
"name": "operation-id ",
"targetId": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /operations/operation-id ",
"targetProject": "project-id "
}
Esegui il rollback di un'operazione di rotazione del certificato
Dopo aver completato una rotazione del certificato, tutti i client devono utilizzare il nuovo certificato per connettersi alla tua istanza Cloud SQL. Se i client non vengono aggiornati correttamente per utilizzare le informazioni del nuovo certificato, non possono connettersi alla tua istanza tramite SSL/TLS. In tal caso, puoi eseguire il rollback
alla configurazione precedente del certificato.
Un'operazione di rollback sposta il certificato attivo nello slot "imminente" (sostituendo qualsiasi certificato "imminente"). Il certificato "precedente" diventa quello attivo e restituisce la configurazione del certificato allo stato in cui si trovava prima del completamento della rotazione.
Nota: il rollback del certificato è disponibile solo fino alla scadenza del certificato precedente.
Per eseguire il rollback alla configurazione precedente del certificato:
Console
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL .
Vai a Istanze Cloud SQL
Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
Seleziona Connections (Connessioni) dal menu di navigazione SQL.
Seleziona la scheda Sicurezza .
Fai clic per espandere Gestisci certificati .
Seleziona Esegui il rollback del certificato CA . Se non ci sono certificati idonei, l'opzione di rollback non è disponibile. In caso contrario, l'azione di rollback viene completata dopo alcuni secondi.
gcloud
gcloud beta sql ssl server-ca-certs rollback \
--instance=INSTANCE_NAME
REST v1
Scarica i certificati CA del server:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
Metodo HTTP e URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /listServerCas
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /listServerCas"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /listServerCas" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"certs": [
{
"kind": "sql#sslCert",
"certSerialNumber": "cert-serial-number ",
"cert": "cert-value ",
"commonName": "ca-server-name ",
"sha1Fingerprint": "sha1Fingerprint ",
"instance": "instance-id ",
"createTime": "2020-02-10T17:18:54.935Z",
"expirationTime": "2030-02-07T17:19:54.935Z"
},
{
"kind": "sql#sslCert",
certSerialNumber": "cert-serial-number ",
"cert": "cert-value ",
"commonName": "ca-server-name ",
"sha1Fingerprint": "sha1Fingerprint ",
"instance": "instance-id ",
"createTime": "2019-11-14T22:43:56.458Z",
"expirationTime": "2029-11-11T22:44:56.458Z"
}
],
"activeVersion": "active-version ",
"kind": "sql#instancesListServerCas"
}
Copia il campo sha1Fingerprint
per la versione a cui vuoi eseguire il rollback.
Cerca la versione con un valore createTime immediatamente precedente alla versione con il valore sha1Fingerprint mostrato come activeVersion
.
Esegui il rollback della rotazione:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
Metodo HTTP e URL:
POST https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /rotateServerCa
Corpo JSON della richiesta:
{
"rotateServerCaContext": {"nextVersion": "sha1Fingerprint "}
}
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
ed esegui questo comando:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /rotateServerCa"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
ed esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /rotateServerCa" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-20T21:30:35.667Z",
"operationType": "UPDATE",
"name": "operation-id ",
"targetId": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id /operations/operation-id ",
"targetProject": "project-id "
}
REST v1beta4
Scarica i certificati CA del server:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
Metodo HTTP e URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /listServerCas
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /listServerCas"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /listServerCas" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"certs": [
{
"kind": "sql#sslCert",
"certSerialNumber": "cert-serial-number ",
"cert": "cert-value ",
"commonName": "ca-server-name ",
"sha1Fingerprint": "sha1Fingerprint ",
"instance": "instance-id ",
"createTime": "2020-02-10T17:18:54.935Z",
"expirationTime": "2030-02-07T17:19:54.935Z"
},
{
"kind": "sql#sslCert",
certSerialNumber": "cert-serial-number ",
"cert": "cert-value ",
"commonName": "ca-server-name ",
"sha1Fingerprint": "sha1Fingerprint ",
"instance": "instance-id ",
"createTime": "2019-11-14T22:43:56.458Z",
"expirationTime": "2029-11-11T22:44:56.458Z"
}
],
"activeVersion": "active-version ",
"kind": "sql#instancesListServerCas"
}
Copia il campo sha1Fingerprint
per la versione a cui vuoi eseguire il rollback.
Cerca la versione con un valore createTime immediatamente precedente alla versione con il valore sha1Fingerprint mostrato come activeVersion
.
Esegui il rollback della rotazione:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
Metodo HTTP e URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /rotateServerCa
Corpo JSON della richiesta:
{
"rotateServerCaContext": {"nextVersion": "sha1Fingerprint "}
}
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
ed esegui questo comando:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /rotateServerCa"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Salva il corpo della richiesta in un file denominato request.json
ed esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /rotateServerCa" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-20T21:30:35.667Z",
"operationType": "UPDATE",
"name": "operation-id ",
"targetId": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /operations/operation-id ",
"targetProject": "project-id "
}
Avviare una rotazione
Non devi attendere l'email di Cloud SQL per avviare una rotazione.
Puoi avviarne una in qualsiasi momento. Quando avvii una rotazione, viene creato un nuovo certificato che viene inserito nello slot "prossimo". Se è già presente nello slot "prossimo" al momento della richiesta, questo viene eliminato.
Può esserci un solo certificato imminente.
Per avviare una rotazione:
Console
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL .
Vai a Istanze Cloud SQL
Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
Seleziona Connections (Connessioni) dal menu di navigazione SQL.
Seleziona la scheda Sicurezza .
Fai clic su Crea nuovo certificato CA .
Fai clic per espandere Gestisci certificati .
Seleziona Ruota il certificato CA .
Se non esistono certificati idonei, l'opzione di rotazione non è disponibile.
Completa la rotazione come descritto in
Ruotare i certificati CA del server .
REST v1
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
Metodo HTTP e URL:
POST https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /rotateServerCa
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d "" \ "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /rotateServerCa"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method POST ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /rotateServerCa" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-20T21:30:35.667Z",
"operationType": "UPDATE",
"name": "operation-id ",
"targetId": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/v1/projects/project-id /operations/operation-id ",
"targetProject": "project-id "
}
Completa la rotazione come descritto in
Ruotare i certificati CA del server .
REST v1beta4
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
Metodo HTTP e URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /rotateServerCa
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d "" \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /rotateServerCa"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method POST ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /rotateServerCa" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-20T21:30:35.667Z",
"operationType": "UPDATE",
"name": "operation-id ",
"targetId": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /operations/operation-id ",
"targetProject": "project-id "
}
Completa la rotazione come descritto in
Ruotare i certificati CA del server .
Recuperare informazioni su un certificato CA del server
Puoi ottenere informazioni sul certificato CA del server, ad esempio quando scade o quale livello di crittografia fornisce.
Console
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL .
Vai a Istanze Cloud SQL
Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
Seleziona Connections (Connessioni) dal menu di navigazione SQL.
Seleziona la scheda Sicurezza .
In Gestisci i certificati CA del server , puoi visualizzare nella tabella la data di scadenza del certificato CA del server.
Per visualizzare il tipo di certificato, usa il comando gcloud beta sql ssl server-ca-certs list --instance=INSTANCE_NAME
.
gcloud
gcloud beta sql ssl server-ca-certs list \
--instance=INSTANCE_NAME
REST v1
Quando descrivi l'istanza, puoi visualizzare i dettagli del certificato CA del server:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
Metodo HTTP e URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=serverCaCert
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=serverCaCert"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=serverCaCert" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"serverCaCert":
{
"kind": "sql#sslCert",
"certSerialNumber": "cert-serial-number ",
"cert": "cert-value -",
"commonName": "ca-server-name ",
"sha1Fingerprint": "sha1Fingerprint ",
"instance": "instance-id ",
"createTime": "2020-02-10T17:18:54.935Z",
"expirationTime": "2030-02-07T17:19:54.935Z"
}
}
REST v1beta4
Quando descrivi l'istanza, puoi visualizzare i dettagli del certificato CA del server:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
Metodo HTTP e URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=serverCaCert
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=serverCaCert"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=serverCaCert" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"serverCaCert":
{
"kind": "sql#sslCert",
"certSerialNumber": "cert-serial-number ",
"cert": "cert-value -",
"commonName": "ca-server-name ",
"sha1Fingerprint": "sha1Fingerprint ",
"instance": "instance-id ",
"createTime": "2020-02-10T17:18:54.935Z",
"expirationTime": "2030-02-07T17:19:54.935Z"
}
}
Reimposta la configurazione SSL/TLS
Puoi reimpostare completamente la configurazione SSL/TLS.
Attenzione: l'esecuzione di questa azione rimuove la possibilità di connetterti all'istanza
utilizzando SSL/TLS finché non crei nuovi certificati client in sostituzione di quelli
che erano in uso in precedenza.
Console
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL .
Vai a Istanze Cloud SQL
Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
Seleziona Connections (Connessioni) dal menu di navigazione SQL.
Vai alla sezione Reimposta configurazione SSL .
Fai clic su Reimposta configurazione SSL .
gcloud
Aggiorna il certificato:
gcloud sql instances reset-ssl-config INSTANCE_NAME
gcloud sql instances restart INSTANCE_NAME
Crea nuovi certificati client .
REST v1beta4
Aggiorna il certificato:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
project-id : l'ID progetto
instance-id : l'ID istanza
Metodo HTTP e URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /resetSslConfig
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Nota:
il comando seguente presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
oppure utilizzando Cloud Shell ,
che ti consente di accedere automaticamente all'interfaccia a riga di comando gcloud
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d "" \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /resetSslConfig"
PowerShell (Windows)
Nota:
il seguente comando presuppone che tu abbia eseguito l'accesso
all'interfaccia a riga di comando gcloud
con il tuo account utente eseguendo
gcloud init
o
gcloud auth login
.
Puoi controllare l'account attualmente attivo eseguendo
gcloud auth list
.
Esegui questo comando:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method POST ` -Headers $headers ` -Uri "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /resetSslConfig" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Risposta
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2020-01-20T21:30:35.667Z",
"operationType": "UPDATE",
"name": "operation-id ",
"targetId": "instance-id ",
"selfLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /operations/operation-id ",
"targetProject": "project-id "
}
Crea nuovi certificati client .
Passaggi successivi