Nesta página, você verá como gerenciar os certificados do cliente e servidor.
Gerenciar certificados do cliente
Recuperar um certificado do cliente
É possível recuperar a parte da chave pública de um certificado do cliente. No entanto, não é possível recuperar a chave privada. Se você perdeu a chave privada, precisa criar um novo certificado.
Console
No console do Google Cloud, acesse a página Instâncias do Cloud SQL .
Acesse "Instâncias do Cloud SQL"
Para abrir a página Visão geral de uma instância, clique no nome da instância.
Selecione Conexões no menu de navegação do SQL.
Selecione a guia Segurança .
Abaixo de Gerenciar certificados do cliente , clique no nome de um certificado.
A caixa de diálogo Certificado de cliente SSL
é aberta e mostra o certificado do cliente (client-cert.pem
) com
um link para fazer o download do certificado.
gcloud
Recupere a chave pública do certificado do cliente com o comando ssl client-certs describe
:
gcloud sql ssl client-certs describe CERT_NAME \
--instance=INSTANCE_NAME \
--format="value(cert)" > client-cert.pem
REST v1
Liste os certificados na instância para receber a impressão digital do certificado que você quer recuperar:
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
Método HTTP e URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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"
}
]
}
Registre o campo sha1Fingerprint
do certificado que você quer recuperar. Não inclua as aspas.
Recupere o certificado:
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
sha1FingerPrint : o sha1FingerPrint do certificado
Método HTTP e URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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"
}
Copie todos os dados de certificado entre aspas para um arquivo. Por exemplo, client-cert.pem
. Não copie as aspas.
REST v1beta4
Liste os certificados na instância para receber a impressão digital do certificado que você quer recuperar:
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
Método HTTP e URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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"
}
]
}
Registre o campo sha1Fingerprint
do certificado que você quer recuperar. Não inclua as aspas.
Recupere o certificado:
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
sha1FingerPrint : o sha1FingerPrint do certificado
Método HTTP e URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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"
}
Copie todos os dados de certificado entre aspas para um arquivo. Por exemplo, client-cert.pem
. Não copie as aspas.
Excluir um certificado do cliente
Quando você exclui um certificado do cliente, o servidor do banco de dados é atualizado e não precisa ser reiniciado.
Console
No console do Google Cloud, acesse a página Instâncias do Cloud SQL .
Acesse "Instâncias do Cloud SQL"
Para abrir a página Visão geral de uma instância, clique no nome da instância.
Selecione Conexões no menu de navegação do SQL.
Selecione a guia Segurança .
Abaixo de Gerenciar certificados do cliente , localize o certificado que você quer
excluir e clique em .
Na caixa de diálogo Excluir certificado do cliente , clique em Ok .
gcloud
Exclua o certificado do cliente usando o
ssl client-certs delete :
gcloud sql ssl client-certs delete CERT_NAME \
--instance=INSTANCE_NAME
REST v1
Liste os certificados na instância para receber a impressão digital do certificado a ser excluído:
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
Método HTTP e URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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"
}
]
}
Registre o campo sha1Fingerprint
do certificado que você quer excluir. Não inclua as aspas.
Exclua o certificado:
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
sha1FingerPrint : o sha1FingerPrint do certificado
Método HTTP e URL:
DELETE https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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
Liste os certificados na instância para receber a impressão digital do certificado a ser excluído:
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
Método HTTP e URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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"
}
]
}
Registre o campo sha1Fingerprint
do certificado que você quer excluir. Não inclua as aspas.
Exclua o certificado:
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
sha1FingerPrint : o sha1FingerPrint do certificado
Método HTTP e URL:
DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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 "
}
Gerenciar certificados do servidor
Alternar certificados do servidor
Se você tiver recebido um aviso sobre seus certificados que estão para expirar ou se tiver iniciado uma rotação, siga as etapas a seguir para concluí-la:
Faça o download das informações do novo certificado do servidor.
Atualize seus clientes para usarem as novas informações do certificado do servidor.
Conclua a rotação. Ela move o certificado ativo atual para o slot "anterior" e atualiza o recém-adicionado para que seja o certificado ativo.
Após a alternância do certificado SSL, suas conexões do App Engine e do
proxy do Cloud SQL Auth receberão automaticamente um novo certificado
quando se conectarem.
Console
Faça o download das informações do novo certificado do servidor:
No console do Google Cloud, acesse a página Instâncias do Cloud SQL .
Acesse "Instâncias do Cloud SQL"
Para abrir a página Visão geral de uma instância, clique no nome da instância.
Selecione Conexões no menu de navegação do SQL.
Selecione a guia Segurança .
Clique para expandir a opção Gerenciar certificados .
Selecione Rotação do certificado .
A opção de rotação fica esmaecida quando não há certificados
qualificados.
Clique em Fazer o download dos certificados .
As informações do certificado do servidor, codificadas como um arquivo PEM, são transferidas por download
ao ambiente local:
Atualize todos os clientes do PostgreSQL para usar as novas informações copiando o arquivo transferido para as máquinas host do cliente, substituindo o arquivo server-ca.pem
atual.
Depois de atualizar os clientes, conclua a rotação:
Volte para a guia Segurança .
Clique para expandir a opção Gerenciar certificados .
Selecione Rotação do certificado .
Confirme se os clientes estão se conectando corretamente.
Se algum cliente não conseguir se conectar usando o certificado recém-alternado,
selecione Reverter certificado para reverter à
configuração anterior.
gcloud
Crie um certificado do servidor:
gcloud beta sql ssl server-ca-certs create \
--instance=INSTANCE
Faça o download das informações do certificado para um arquivo PEM local:
gcloud beta sql ssl server-ca-certs list \
--format="value(cert)" \
--instance=INSTANCE_NAME > \
FILE_PATH /FILE_NAME .pem
Atualize todos os clientes para usar as novas informações. Basta copiar o arquivo transferido por download para as máquinas host do cliente, substituindo os arquivos "server-ca.pem" atuais.
Depois de atualizar os clientes, conclua a rotação:
gcloud beta sql ssl server-ca-certs rotate \
--instance=INSTANCE_NAME
Confirme se os clientes estão se conectando corretamente.
Se algum cliente não estiver se conectando com o certificado recém-alternado, será possível reverter à configuração anterior.
REST v1
Faça o download de seus certificados do servidor:
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
Método HTTP e URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /listServerCas
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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"
}
Complete a rotação:
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
Método HTTP e URL:
POST https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /rotateServerCa
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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
Faça o download de seus certificados do servidor:
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
Método HTTP e URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /listServerCas
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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"
}
Complete a rotação:
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
Método HTTP e URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /rotateServerCa
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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 "
}
Reverter uma operação de rotação de certificado
Depois da conclusão da rotação, é necessário que todos os seus clientes usem o novo certificado para se conectar à sua instância do Cloud SQL. Se os clientes não forem atualizados de maneira correta para usar as novas informações de certificado, eles não poderão se conectar à sua instância usando SSL/TLS. Se isso acontecer, você poderá fazer rollback para a configuração anterior.
Uma operação de rollback move o certificado ativo no momento para o "próximo" slot, substituindo qualquer certificado marcado como "próximo". O certificado "anterior" se torna o ativo, retornando sua configuração ao estado em que estava antes de você concluir a rotação.
Observação: a operação de reversão do certificado só está disponível até a data de validade do antigo.
Para fazer rollback para a configuração do certificado anterior:
Console
No console do Google Cloud, acesse a página Instâncias do Cloud SQL .
Acesse "Instâncias do Cloud SQL"
Para abrir a página Visão geral de uma instância, clique no nome da instância.
Selecione Conexões no menu de navegação do SQL.
Selecione a guia Segurança .
Clique para expandir a opção Gerenciar certificados .
Selecione Reverter certificado . A opção de rotação fica
esmaecida quando não há certificados qualificados. Caso contrário, a ação de
reversão será concluída após alguns segundos.
gcloud
gcloud beta sql ssl server-ca-certs rollback \
--instance=INSTANCE_NAME
REST v1
Faça o download de seus certificados do servidor:
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
Método HTTP e URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /listServerCas
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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"
}
Copie o campo sha1Fingerprint
da versão que você quer reverter.
Procure a versão com um valor createTime imediatamente anterior à versão com sha1Fingerprint mostrado como activeVersion
.
Reverta a rotação:
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
Método HTTP e URL:
POST https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /rotateServerCa
Corpo JSON da solicitação:
{
"rotateServerCaContext": {"nextVersion": "sha1Fingerprint "}
}
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
$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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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
Faça o download de seus certificados do servidor:
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
Método HTTP e URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /listServerCas
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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"
}
Copie o campo sha1Fingerprint
da versão que você quer reverter.
Procure a versão com um valor createTime imediatamente anterior à versão com sha1Fingerprint mostrado como activeVersion
.
Reverta a rotação:
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
Método HTTP e URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /rotateServerCa
Corpo JSON da solicitação:
{
"rotateServerCaContext": {"nextVersion": "sha1Fingerprint "}
}
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
Salve o corpo da solicitação em um arquivo com o nome request.json
e execute o comando a seguir:
$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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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 "
}
Iniciar uma rotação
Você não precisa esperar o e-mail do Cloud SQL para iniciar uma rotação.
Você pode fazer isso a qualquer momento. Ao iniciar uma rotação, um novo certificado é criado e colocado no "próximo" slot. Caso esse certificado já esteja no "próximo" slot, ele será excluído. Pode haver somente um "próximo" certificado.
Para iniciar uma rotação:
Console
No console do Google Cloud, acesse a página Instâncias do Cloud SQL .
Acesse "Instâncias do Cloud SQL"
Para abrir a página Visão geral de uma instância, clique no nome da instância.
Selecione Conexões no menu de navegação do SQL.
Selecione a guia Segurança .
Clique em Criar novo certificado .
Clique para expandir a opção Gerenciar certificados .
Selecione Rotação do certificado .
A opção de rotação fica esmaecida quando não há certificados
qualificados.
Conclua a alternância conforme descrito em Como alternar os certificados do servidor .
REST v1
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
Método HTTP e URL:
POST https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /rotateServerCa
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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 "
}
Conclua a alternância conforme descrito em Como alternar os certificados do servidor .
REST v1beta4
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
Método HTTP e URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /rotateServerCa
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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 "
}
Conclua a alternância conforme descrito em Como alternar os certificados do servidor .
Receber informações sobre um certificado do servidor
Você pode receber informações sobre o certificado do servidor, como a data de validade ou o nível de criptografia que ele oferece.
Console
No console do Google Cloud, acesse a página Instâncias do Cloud SQL .
Acesse "Instâncias do Cloud SQL"
Para abrir a página Visão geral de uma instância, clique no nome da instância.
Selecione Conexões no menu de navegação do SQL.
Selecione a guia Segurança .
Abaixo de Gerenciar certificados do servidor , é possível ver a data de validade
do certificado do servidor na tabela.
Para ver o tipo de certificado, use o 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
Você pode ver detalhes do certificado de servidor ao descrever a instância:
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
Método HTTP e URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=serverCaCert
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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
Você pode ver detalhes do certificado de servidor ao descrever a instância:
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
Método HTTP e URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=serverCaCert
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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"
}
}
Redefinir a configuração SSL/TLS
É possível redefinir completamente a configuração SSL/TLS.
Cuidado: depois de executar essa ação, não será mais possível se conectar à instância usando o SSL/TLS até que sejam criados novos certificados do cliente para substituir todos aqueles que estavam sendo usados anteriormente.
Console
No console do Google Cloud, acesse a página Instâncias do Cloud SQL .
Acesse "Instâncias do Cloud SQL"
Para abrir a página Visão geral de uma instância, clique no nome da instância.
Selecione Conexões no menu de navegação do SQL.
Role para baixo até a seção Redefinir configuração SSL .
Clique em Redefinir configuração SSL .
REST v1beta4
Atualize o certificado:
Antes de usar os dados da solicitação abaixo, faça as substituições a seguir:
project-id : o ID do projeto
instance-id : o ID da instância
Método HTTP e URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /resetSslConfig
Para enviar a solicitação, expanda uma destas opções:
curl (Linux, macOS ou Cloud Shell)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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)
Observação :
o comando a seguir pressupõe que você fez login na CLI gcloud
com sua conta de usuário executando
gcloud init
ou
gcloud auth login
,
ou usando o
Cloud Shell ,
que faz login automaticamente na CLI gcloud
.
É possível verificar a conta ativa atual executando
gcloud auth list
.
execute o seguinte 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
Você receberá uma resposta JSON semelhante a esta:
Resposta
{
"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 "
}
Crie novos certificados do cliente .
A seguir