Halaman ini menjelaskan cara mengelola sertifikat CA klien dan server Anda.
Mengelola sertifikat klien
Gunakan prosedur berikut untuk mengelola sertifikat klien di Cloud SQL.
Mengambil sertifikat klien
Anda dapat mengambil bagian kunci publik dari sertifikat klien. Namun,
Anda tidak dapat mengambil kunci pribadi. Jika kunci pribadi hilang, Anda harus
membuat sertifikat baru.
Konsol
Di konsol Google Cloud, buka halaman Instance Cloud SQL .
Buka Instance Cloud SQL
Untuk membuka halaman Ringkasan instance, klik nama instance.
Pilih Koneksi dari menu navigasi SQL.
Pilih tab Keamanan .
Di Mengelola sertifikat klien , klik nama sertifikat.
Halaman Sertifikat Klien SSL
akan terbuka dan menampilkan sertifikat klien (client-cert.pem
) dengan
link untuk mendownload sertifikat.
gcloud
Ambil kunci publik sertifikat klien dengan perintah
ssl client-certs describe
:
gcloud sql ssl client-certs describe CERT_NAME \
--instance= INSTANCE_NAME \
--format= "value(cert)" > client-cert.pem
REST v1
Cantumkan sertifikat pada instance untuk mendapatkan sidik jari
sertifikat yang ingin Anda ambil:
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"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"
}
]
}
Catat kolom sha1Fingerprint
untuk sertifikat yang ingin
Anda ambil. Jangan sertakan tanda kutip.
Ambil sertifikat:
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
sha1FingerPrint : sha1FingerPrint sertifikat
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"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"
}
Salin semua data sertifikat yang terdapat di dalam tanda kutip
ke dalam file, misalnya client-cert.pem
. Jangan menyalin
tanda kutip itu sendiri.
REST v1beta4
Cantumkan sertifikat pada instance untuk mendapatkan sidik jari
sertifikat yang ingin Anda ambil:
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"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"
}
]
}
Catat kolom sha1Fingerprint
untuk sertifikat yang ingin
Anda ambil. Jangan sertakan tanda kutip.
Ambil sertifikat:
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
sha1FingerPrint : sha1FingerPrint sertifikat
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"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"
}
Salin semua data sertifikat yang terdapat di dalam tanda kutip
ke dalam file, misalnya client-cert.pem
. Jangan menyalin
tanda kutip itu sendiri.
Menghapus sertifikat klien
Saat Anda menghapus sertifikat klien, server database akan diperbarui dan tidak perlu dimulai ulang.
Konsol
Di konsol Google Cloud, buka halaman Instance Cloud SQL .
Buka Instance Cloud SQL
Untuk membuka halaman Ringkasan instance, klik nama instance.
Pilih Koneksi dari menu navigasi SQL.
Pilih tab Keamanan .
Di Mengelola sertifikat klien , temukan sertifikat yang ingin
dihapus, lalu klik .
Di panel Hapus sertifikat klien , klik Oke .
gcloud
Hapus sertifikat klien menggunakan
perintah
ssl client-certs delete :
gcloud sql ssl client-certs delete CERT_NAME \
--instance= INSTANCE_NAME
REST v1
Cantumkan sertifikat pada instance untuk mendapatkan sidik jari
sertifikat yang ingin Anda hapus:
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"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"
}
]
}
Catat kolom sha1Fingerprint
untuk sertifikat yang ingin
Anda hapus. Jangan sertakan tanda kutip.
Menghapus sertifikat:
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
sha1FingerPrint : sha1FingerPrint sertifikat
Metode HTTP dan URL:
DELETE https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{
"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
Cantumkan sertifikat pada instance untuk mendapatkan sidik jari
sertifikat yang ingin Anda hapus:
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"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"
}
]
}
Catat kolom sha1Fingerprint
untuk sertifikat yang ingin
Anda hapus. Jangan sertakan tanda kutip.
Menghapus sertifikat:
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
sha1FingerPrint : sha1FingerPrint sertifikat
Metode HTTP dan URL:
DELETE https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /sslCerts/sha1FingerPrint
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"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 "
}
Mengelola sertifikat CA server (CA per instance)
Bagian ini menjelaskan cara mengelola sertifikat CA server yang dibuat
secara internal oleh Cloud SQL. Ini adalah mode CA server default di Cloud SQL. Dalam hierarki otoritas sertifikasi ini, Cloud SQL membuat
CA server untuk setiap instance.
Merotasi sertifikat CA server
Jika Anda menerima pemberitahuan tentang masa berlaku sertifikat atau ingin
memulai rotasi, lakukan langkah-langkah berikut untuk menyelesaikan
rotasi. Sebelum memulai rotasi, Anda harus memiliki CA server baru
di instance. Jika CA server baru telah
dibuat, Anda dapat melewati langkah pertama dalam prosedur berikut.
Buat CA server baru.
Download informasi sertifikat CA server baru.
Perbarui klien Anda untuk menggunakan informasi sertifikat CA server yang baru.
Selesaikan rotasi, yang memindahkan sertifikat aktif ke
slot "sebelumnya" dan memperbarui sertifikat yang baru ditambahkan menjadi
sertifikat aktif.
Setelah merotasi sertifikat SSL, App Engine dan
koneksi Proxy Auth Cloud SQL secara otomatis akan menerima sertifikat baru
ketika terhubung.
Konsol
Mendownload informasi sertifikat CA server baru:
Di konsol Google Cloud, buka halaman Instance Cloud SQL .
Buka Instance Cloud SQL
Untuk membuka halaman Ringkasan instance, klik nama instance.
Pilih Koneksi dari menu navigasi SQL.
Pilih tab Keamanan .
Klik untuk meluaskan Kelola sertifikat .
Pilih Rotasi sertifikat CA .
Jika tidak ada sertifikat yang memenuhi syarat, opsi
rotasi tidak akan tersedia.
Klik Download Sertifikat .
Informasi sertifikat CA server, yang dienkode sebagai file PEM, didownload
ke lingkungan lokal Anda:
Perbarui semua klien MySQL Anda untuk menggunakan informasi baru dengan
menyalin file yang didownload ke mesin host klien, menggantikan
file server-ca.pem
yang sudah ada.
Setelah Anda memperbarui klien, selesaikan rotasi:
Kembali ke tab Keamanan .
Klik untuk meluaskan Kelola sertifikat .
Pilih Rotasi sertifikat CA .
Pastikan klien Anda terhubung dengan benar.
Jika ada klien yang tidak terhubung menggunakan sertifikat yang baru dirotasi,
Anda dapat memilih Rollback CA certificate untuk
rollback ke konfigurasi sebelumnya.
gcloud
Buat sertifikat CA server:
gcloud beta sql ssl server-ca-certs create \
--instance=INSTANCE
Download informasi sertifikat ke file PEM lokal:
gcloud sql ssl server-ca-certs list \
--format="value(cert)" \
--instance=INSTANCE_NAME > \
FILE_PATH /FILE_NAME .pem
Perbarui semua klien Anda untuk menggunakan informasi baru ini dengan
menyalin file yang didownload ke mesin host klien, menggantikan
file server-ca.pem yang sudah ada.
Setelah Anda memperbarui klien, selesaikan rotasi:
gcloud sql ssl server-ca-certs rotate \
--instance=INSTANCE_NAME
Pastikan klien Anda terhubung dengan benar.
Jika ada klien yang tidak terhubung menggunakan sertifikat yang baru dirotasi,
Anda dapat melakukan rollback ke konfigurasi sebelumnya.
REST v1
Download sertifikat CA server Anda:
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /listServerCas
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"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"
}
Selesaikan rotasi:
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /rotateServerCa
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{
"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
Download sertifikat CA server Anda:
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /listServerCas
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"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"
}
Selesaikan rotasi:
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /rotateServerCa
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"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 "
}
Me-roll back operasi rotasi sertifikat
Setelah Anda menyelesaikan rotasi sertifikat, semua klien Anda harus menggunakan
sertifikat baru untuk terhubung ke instance Cloud SQL. Jika klien
tidak diperbarui dengan benar untuk menggunakan informasi sertifikat baru, klien tidak
akan dapat terhubung menggunakan SSL/TLS ke instance Anda. Jika hal ini terjadi, Anda dapat
melakukan roll back ke konfigurasi sertifikat sebelumnya.
Operasi rollback akan memindahkan sertifikat aktif ke slot "mendatang" (menggantikan sertifikat "mendatang"). Sertifikat "sebelumnya"
akan menjadi sertifikat yang aktif, mengembalikan konfigurasi
sertifikat ke keadaan sebelum Anda menyelesaikan
rotasi.
Catatan: Rollback sertifikat hanya tersedia hingga masa berlaku sertifikat lama berakhir.
Untuk melakukan roll back ke konfigurasi sertifikat sebelumnya:
Konsol
Di konsol Google Cloud, buka halaman Instance Cloud SQL .
Buka Instance Cloud SQL
Untuk membuka halaman Ringkasan instance, klik nama instance.
Pilih Koneksi dari menu navigasi SQL.
Pilih tab Keamanan .
Klik untuk meluaskan Kelola sertifikat .
Pilih Rollback CA certificate . Jika tidak ada sertifikat yang memenuhi syarat,
opsi rollback tidak akan tersedia. Jika tidak, tindakan
rollback akan selesai setelah beberapa detik.
gcloud
gcloud sql ssl server-ca-certs rollback \
--instance=INSTANCE_NAME
REST v1
Download sertifikat CA server Anda:
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /listServerCas
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"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"
}
Salin kolom sha1Fingerprint
untuk versi yang ingin Anda roll back.
Cari versi dengan nilai createTime yang lebih awal
sebelum versi dengan nilai sha1Fingerprint yang ditunjukkan sebagai
activeVersion
.
Roll back rotasi:
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /rotateServerCa
Meminta isi JSON:
{
"rotateServerCaContext": {"nextVersion": "sha1Fingerprint "}
}
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{
"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
Download sertifikat CA server Anda:
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /listServerCas
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"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"
}
Salin kolom sha1Fingerprint
untuk versi yang ingin Anda roll back.
Cari versi dengan nilai createTime yang lebih awal
sebelum versi dengan nilai sha1Fingerprint yang ditunjukkan sebagai
activeVersion
.
Roll back rotasi:
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /rotateServerCa
Meminta isi JSON:
{
"rotateServerCaContext": {"nextVersion": "sha1Fingerprint "}
}
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"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 "
}
Memulai rotasi
Anda tidak perlu menunggu email dari Cloud SQL untuk memulai rotasi.
Anda dapat memulainya kapan saja. Saat Anda memulai rotasi, sertifikat baru
akan dibuat dan ditempatkan ke slot "mendatang". Jika sertifikat sudah ada
di slot "mendatang" pada saat permintaan Anda, sertifikat tersebut akan dihapus.
Hanya boleh ada satu sertifikat mendatang.
Untuk memulai rotasi:
Konsol
Di konsol Google Cloud, buka halaman Instance Cloud SQL .
Buka Instance Cloud SQL
Untuk membuka halaman Ringkasan instance, klik nama instance.
Pilih Koneksi dari menu navigasi SQL.
Pilih tab Keamanan .
Klik Create new CA certificate .
Klik untuk meluaskan Kelola sertifikat .
Pilih Rotasi sertifikat CA .
Jika tidak ada sertifikat yang memenuhi syarat,
opsi rotasi tidak akan tersedia.
Selesaikan rotasi seperti yang dijelaskan dalam
Merotasi sertifikat CA server .
gcloud
Memulai rotasi:
gcloud sql ssl server-ca-certs create \
--instance=INSTANCE_NAME
Selesaikan rotasi seperti yang dijelaskan dalam
Merotasi sertifikat CA server .
REST v1
Sebelum menggunakan salah satu dari data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /rotateServerCa
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"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 "
}
Selesaikan rotasi seperti yang dijelaskan dalam
Merotasi sertifikat CA server .
REST v1beta4
Sebelum menggunakan salah satu dari data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /rotateServerCa
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"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 "
}
Selesaikan rotasi seperti yang dijelaskan dalam
Merotasi sertifikat CA server .
Mendapatkan informasi tentang sertifikat CA server
Anda dapat memperoleh informasi tentang sertifikat CA server, seperti kapan masa berlaku sertifikat berakhir
atau tingkat enkripsi yang disediakannya.
Konsol
Di konsol Google Cloud, buka halaman Instance Cloud SQL .
Buka Instance Cloud SQL
Untuk membuka halaman Ringkasan instance, klik nama instance.
Pilih Koneksi dari menu navigasi SQL.
Pilih tab Keamanan .
Di Kelola sertifikat CA server , Anda dapat melihat tanggal habis masa berlaku
sertifikat CA server di tabel.
Untuk melihat jenis sertifikat, gunakan
perintah gcloud sql ssl server-ca-certs list --instance=INSTANCE_NAME
.
gcloud
gcloud sql ssl server-ca-certs list \
--instance= INSTANCE_NAME
REST v1
Saat mendeskripsikan instance, Anda dapat melihat detail tentang sertifikat CA
server:
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=serverCaCert
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{
"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
Saat mendeskripsikan instance, Anda dapat melihat detail tentang sertifikat
CA server:
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=serverCaCert
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"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"
}
}
Melihat konten sertifikat CA
Anda dapat menggunakan openssl storeutl
untuk melihat konten sertifikat CA.
Saat menjalankan perintah beta sql ssl server-ca-certs list , Anda mungkin mendapatkan beberapa sertifikat CA dari operasi
terkait rotasi sebelumnya.
gcloud
Jalankan perintah berikut:
gcloud beta sql ssl server-ca-certs list \
--instance= INSTANCE_NAME \
--format= 'value(cert)' > temp_cert.pem
Ganti INSTANCE_NAME dengan nama instance.
Gunakan openssl
untuk memeriksa konten sertifikat CA.
openssl storeutl -noout -text temp_cert.pem
Melihat konten sertifikat server
Anda dapat menggunakan
openssl s_client
untuk melihat konten sertifikat server.
gcloud
Untuk melihat konten sertifikat server, jalankan perintah berikut:
openssl s_client -starttls mysql -connect INSTANCE_IP_ADDRESS :3306
Ganti INSTANCE_IP_ADDRESS dengan alamat IP instance.
Mengelola sertifikat server (CA bersama)
Pratinjau
Fitur ini tunduk pada "Persyaratan Penawaran Pra-GA" di bagian Persyaratan Layanan Umum
dalam Persyaratan Khusus Layanan .
Fitur pra-GA tersedia "sebagaimana adanya" dan mungkin memiliki dukungan terbatas.
Untuk mengetahui informasi selengkapnya, lihat
deskripsi tahap peluncuran .
Bagian ini menjelaskan cara mengelola sertifikat server pada instance yang menggunakan CA bersama.
Anda dapat memilih untuk menggunakan CA bersama sebagai
mode CA server untuk instance dengan menentukan GOOGLE_MANAGED_CAS_CA
untuk
setelan serverCaMode
(Cloud SQL Admin API) atau flag --server-ca-mode
(gcloud CLI ) saat Anda
membuat instance .
Merotasi sertifikat server
Jika Anda menerima pemberitahuan tentang masa berlaku sertifikat atau ingin
memulai rotasi, lakukan langkah-langkah berikut untuk menyelesaikan rotasi.
Sebelum Anda memulai rotasi, harus ada sertifikat server baru yang dibuat untuk
rotasi mendatang. Jika sudah ada sertifikat server baru yang dibuat untuk
rotasi mendatang, Anda dapat melewati langkah pertama dalam prosedur berikut.
Untuk merotasi sertifikat server di instance Anda, lakukan langkah-langkah berikut:
Jika Anda memerlukan sertifikat server baru, buat sertifikat tersebut.
Jika klien Anda sudah memercayai CA root, langkah ini bersifat opsional. Namun, jika Anda perlu memperbarui klien dengan
informasi CA server, lakukan hal berikut:
Download informasi CA server terbaru.
Perbarui klien Anda untuk menggunakan informasi CA server terbaru.
Selesaikan rotasi dengan memindahkan sertifikat aktif ke slot sebelumnya,
dan memperbarui sertifikat baru menjadi sertifikat aktif.
Konsol
Anda tidak dapat menggunakan konsol Google Cloud untuk mengganti sertifikat server di instance yang menggunakan CA Service selama Pratinjau .
Sebagai gantinya, gunakan perintah gcloud beta sql ssl server-certs rotate
atau perintah Cloud SQL Admin API.
gcloud
Untuk membuat sertifikat server, gunakan perintah berikut:
gcloud beta sql ssl server-certs create \
--instance=INSTANCE
Ganti INSTANCE dengan nama instance.
Pastikan Anda menggunakan paket CA terbaru .
Jika Anda tidak menggunakan paket CA terbaru, jalankan perintah
berikut untuk mendownload informasi CA server terbaru untuk
instance ke file PEM lokal:
gcloud beta sql ssl server-certs list \
--format="value(ca_cert.cert)" \
--instance=INSTANCE_NAME > \
FILE_PATH /server-ca.pem
Atau, download paket CA dari
tabel paket sertifikat CA root dan regional
di halaman ini.
Kemudian, perbarui semua klien Anda untuk menggunakan informasi CA server baru dengan
menyalin file yang didownload ke mesin host klien, menggantikan
file server-ca.pem
yang sudah ada.
Setelah Anda memperbarui semua klien (jika pembaruan klien diperlukan),
selesaikan rotasi:
gcloud beta sql ssl server-certs rotate \
--instance=INSTANCE_NAME
Pastikan klien Anda terhubung dengan benar.
Jika ada klien yang tidak terhubung menggunakan sertifikat server yang baru dirotasi,
lakukan rollback ke konfigurasi sebelumnya.
REST v1
Buat sertifikat server.
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
PROJECT_ID : project ID
INSTANCE_ID : ID instance
Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances/INSTANCE_ID /addServerCertificate
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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 /addServerCertificate"
PowerShell (Windows)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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 /addServerCertificate" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances/INSTANCE_ID ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2024-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 "
}
Jika perlu mendownload informasi sertifikat CA server, Anda dapat menggunakan perintah berikut.
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
PROJECT_ID : project ID
INSTANCE_ID : ID instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances/INSTANCE_ID /listServerCertificates
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances/INSTANCE_ID /listServerCertificates"
PowerShell (Windows)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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 /listServerCertificates" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"caCerts": [
{
"kind": "sql#sslCert",
"certSerialNumber": "CERT_SERIAL_NUMBER_CA_CERT_ONE ",
"cert": "CERT_VALUE ",
"commonName": "CA_SERVER_NAME ",
"sha1Fingerprint": "sha1Fingerprint_CA_CERT_ONE ",
"instance": "INSTANCE_NAME ",
"createTime": "2024-07-10T17:18:54.935Z",
"expirationTime": "2034-07-10T17:19:54.935Z"
},
{
"kind": "sql#sslCert",
"certSerialNumber": "CERT_SERIAL_NUMBER_CA_CERT_TWO ",
"cert": "CERT_VALUE ",
"commonName": "CA_SERVER_NAME ",
"sha1Fingerprint": "sha1Fingerprint_CA_CERT_TWO ",
"instance": "INSTANCE_NAME ",
"createTime": "2024-07-14T22:43:56.458Z",
"expirationTime": "2034-11-11T22:44:56.458Z"
}
],
"serverCerts": [
{
"kind": "sql#sslCert",
"certSerialNumber": "CERT_SERIAL_NUMBER_SERVER_CERT_ONE ",
"cert": "CERT_VALUE "
"commonName": "SUBJECT_VALUE ",
"sha1Fingerprint": "sha1Fingerprint_SERVER_CERT_ONE ",
"instance": "INSTANCE_NAME ",
"createTime": "2024-09-16T18:11:39Z",
"expirationTime": "2025-09-16T18:11:38Z"
},
{
"kind": "sql#sslCert",
"certSerialNumber": "CERT_SERIAL_NUMBER_SERVER_CERT_TWO ",
"cert": "CERT_VALUE "
"commonName": "SUBJECT_VALUE ",
"sha1Fingerprint": "sha1Fingerprint_SERVER_CERT_TWO ",
"instance": "INSTANCE_NAME ",
"createTime": "2024-09-10T20:56:06Z",
"expirationTime": "2025-09-10T20:56:05Z"
}
],
"activeVersion": "sha1Fingerprint_SERVER_CERT_TWO ",
"kind": "sql#instancesListServerCertificates"
}
Selesaikan rotasi.
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
PROJECT_ID : ID project
INSTANCE_ID : ID instance
Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances/INSTANCE_ID /rotateServerCertificate
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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 /rotateServerCertificate"
PowerShell (Windows)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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 /rotateServerCertificate" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances/INSTANCE_ID ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2024-09-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
Buat sertifikat server.
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
PROJECT_ID : project ID
INSTANCE_ID : ID instance
Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID /instances/INSTANCE_ID /addServerCertificate
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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 /addServerCertificate"
PowerShell (Windows)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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 /addServerCertificate" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID /instances/INSTANCE_ID ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2024-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 "
}
Jika perlu mendownload informasi sertifikat CA server, Anda dapat menggunakan perintah berikut.
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
PROJECT_ID : project ID
INSTANCE_ID : ID instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID /instances/INSTANCE_ID /listServerCertificates
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID /instances/INSTANCE_ID /listServerCertificates"
PowerShell (Windows)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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 /listServerCertificates" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"caCerts": [
{
"kind": "sql#sslCert",
"certSerialNumber": "CERT_SERIAL_NUMBER_CA_CERT_ONE ",
"cert": "CERT_VALUE ",
"commonName": "CA_SERVER_NAME ",
"sha1Fingerprint": "sha1Fingerprint_CA_CERT_ONE ",
"instance": "INSTANCE_NAME ",
"createTime": "2024-07-10T17:18:54.935Z",
"expirationTime": "2034-07-10T17:19:54.935Z"
},
{
"kind": "sql#sslCert",
"certSerialNumber": "CERT_SERIAL_NUMBER_CA_CERT_TWO ",
"cert": "CERT_VALUE ",
"commonName": "CA_SERVER_NAME ",
"sha1Fingerprint": "sha1Fingerprint_CA_CERT_TWO ",
"instance": "INSTANCE_NAME ",
"createTime": "2024-07-14T22:43:56.458Z",
"expirationTime": "2034-11-11T22:44:56.458Z"
}
],
"serverCerts": [
{
"kind": "sql#sslCert",
"certSerialNumber": "CERT_SERIAL_NUMBER_SERVER_CERT_ONE ",
"cert": "CERT_VALUE "
"commonName": "SUBJECT_VALUE ",
"sha1Fingerprint": "sha1Fingerprint_SERVER_CERT_ONE ",
"instance": "INSTANCE_NAME ",
"createTime": "2024-09-16T18:11:39Z",
"expirationTime": "2025-09-16T18:11:38Z"
},
{
"kind": "sql#sslCert",
"certSerialNumber": "CERT_SERIAL_NUMBER_SERVER_CERT_TWO ",
"cert": "CERT_VALUE "
"commonName": "SUBJECT_VALUE ",
"sha1Fingerprint": "sha1Fingerprint_SERVER_CERT_TWO ",
"instance": "INSTANCE_NAME ",
"createTime": "2024-09-10T20:56:06Z",
"expirationTime": "2025-09-10T20:56:05Z"
}
],
"activeVersion": "sha1Fingerprint_SERVER_CERT_TWO ",
"kind": "sql#instancesListServerCertificates"
}
Selesaikan rotasi.
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
PROJECT_ID : project ID
INSTANCE_ID : ID instance
Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID /instances/INSTANCE_ID /rotateServerCertificate
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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 /rotateServerCertificate"
PowerShell (Windows)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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 /rotateServerCertificate" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"kind": "sql#operation",
"targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID /instances/INSTANCE_ID ",
"status": "PENDING",
"user": "user@example.com",
"insertTime": "2024-09-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 "
}
Membatalkan rotasi sertifikat
Setelah Anda menyelesaikan rotasi sertifikat server, semua klien Anda harus menggunakan
sertifikat baru untuk terhubung ke instance Cloud SQL. Jika klien
tidak diperbarui dengan benar untuk menggunakan informasi sertifikat baru, klien tidak
akan dapat terhubung menggunakan SSL/TLS ke instance Anda. Jika hal ini terjadi, Anda dapat melakukan roll back
ke konfigurasi sertifikat sebelumnya.
Operasi rollback akan memindahkan sertifikat aktif ke slot "mendatang",
yang menggantikan sertifikat "mendatang". Sertifikat "sebelumnya" menjadi
sertifikat aktif dan mengembalikan konfigurasi sertifikat ke keadaan
sebelumnya sebelum Anda menyelesaikan rotasi.
Konsol
Anda tidak dapat menggunakan konsol Google Cloud untuk mengembalikan sertifikat server pada instance yang menggunakan CA Service selama Pratinjau .
Sebagai gantinya, gunakan perintah gcloud beta sql ssl server-certs rollback
atau perintah Cloud SQL Admin API.
gcloud
gcloud beta sql ssl server-certs rollback \
--instance=INSTANCE_NAME
REST v1
Cantumkan sertifikat server Anda.
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
PROJECT_ID : project ID
INSTANCE_ID : ID instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances/INSTANCE_ID /listServerCertificates
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances/INSTANCE_ID /listServerCertificates"
PowerShell (Windows)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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 /listServerCertificates" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"caCerts": [
{
"kind": "sql#sslCert",
"certSerialNumber": "CERT_SERIAL_NUMBER_CA_CERT_ONE ",
"cert": "CERT_VALUE ",
"commonName": "CA_SERVER_NAME ",
"sha1Fingerprint": "sha1Fingerprint_CA_CERT_ONE ",
"instance": "INSTANCE_NAME ",
"createTime": "2024-07-10T17:18:54.935Z",
"expirationTime": "2034-07-10T17:19:54.935Z"
},
{
"kind": "sql#sslCert",
"certSerialNumber": "CERT_SERIAL_NUMBER_CA_CERT_TWO ",
"cert": "CERT_VALUE ",
"commonName": "CA_SERVER_NAME ",
"sha1Fingerprint": "sha1Fingerprint_CA_CERT_TWO ",
"instance": "INSTANCE_NAME ",
"createTime": "2024-07-14T22:43:56.458Z",
"expirationTime": "2034-11-11T22:44:56.458Z"
}
],
"serverCerts": [
{
"kind": "sql#sslCert",
"certSerialNumber": "CERT_SERIAL_NUMBER_SERVER_CERT_ONE ",
"cert": "CERT_VALUE "
"commonName": "SUBJECT_VALUE ",
"sha1Fingerprint": "sha1Fingerprint_SERVER_CERT_ONE ",
"instance": "INSTANCE_NAME ",
"createTime": "2024-09-16T18:11:39Z",
"expirationTime": "2025-09-16T18:11:38Z"
},
{
"kind": "sql#sslCert",
"certSerialNumber": "CERT_SERIAL_NUMBER_SERVER_CERT_TWO ",
"cert": "CERT_VALUE "
"commonName": "SUBJECT_VALUE ",
"sha1Fingerprint": "sha1Fingerprint_SERVER_CERT_TWO ",
"instance": "INSTANCE_NAME ",
"createTime": "2024-09-10T20:56:06Z",
"expirationTime": "2025-09-10T20:56:05Z"
}
],
"activeVersion": "sha1Fingerprint_SERVER_CERT_TWO ",
"kind": "sql#instancesListServerCertificates"
}
Salin kolom sha1Fingerprint
untuk versi yang ingin Anda roll back.
Cari versi dengan nilai createTime
yang lebih awal
sebelum versi dengan nilai sha1Fingerprint
yang ditunjukkan sebagai
activeVersion
.
Roll back rotasi.
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
PROJECT_ID : project ID
INSTANCE_ID : ID instance
Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances/INSTANCE_ID /rotateServerCertificate
Meminta isi JSON:
{
"rotateServerCertificateContext": {"nextVersion": "sha1Fingerprint "}
}
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
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 /rotateServerCertificate"
PowerShell (Windows)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
$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 /rotateServerCertificate" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Tanggapan
{
"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
Cantumkan sertifikat server Anda.
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
PROJECT_ID : project ID
INSTANCE_ID : ID instance
Metode HTTP dan URL:
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID /instances/INSTANCE_ID /listServerCertificates
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID /instances/INSTANCE_ID /listServerCertificates"
PowerShell (Windows)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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 /listServerCertificates" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"caCerts": [
{
"kind": "sql#sslCert",
"certSerialNumber": "CERT_SERIAL_NUMBER_CA_CERT_ONE ",
"cert": "CERT_VALUE ",
"commonName": "CA_SERVER_NAME ",
"sha1Fingerprint": "sha1Fingerprint_CA_CERT_ONE ",
"instance": "INSTANCE_NAME ",
"createTime": "2024-07-10T17:18:54.935Z",
"expirationTime": "2034-07-10T17:19:54.935Z"
},
{
"kind": "sql#sslCert",
"certSerialNumber": "CERT_SERIAL_NUMBER_CA_CERT_TWO ",
"cert": "CERT_VALUE ",
"commonName": "CA_SERVER_NAME ",
"sha1Fingerprint": "sha1Fingerprint_CA_CERT_TWO ",
"instance": "INSTANCE_NAME ",
"createTime": "2024-07-14T22:43:56.458Z",
"expirationTime": "2034-11-11T22:44:56.458Z"
}
],
"serverCerts": [
{
"kind": "sql#sslCert",
"certSerialNumber": "CERT_SERIAL_NUMBER_SERVER_CERT_ONE ",
"cert": "CERT_VALUE "
"commonName": "SUBJECT_VALUE ",
"sha1Fingerprint": "sha1Fingerprint_SERVER_CERT_ONE ",
"instance": "INSTANCE_NAME ",
"createTime": "2024-09-16T18:11:39Z",
"expirationTime": "2025-09-16T18:11:38Z"
},
{
"kind": "sql#sslCert",
"certSerialNumber": "CERT_SERIAL_NUMBER_SERVER_CERT_TWO ",
"cert": "CERT_VALUE "
"commonName": "SUBJECT_VALUE ",
"sha1Fingerprint": "sha1Fingerprint_SERVER_CERT_TWO ",
"instance": "INSTANCE_NAME ",
"createTime": "2024-09-10T20:56:06Z",
"expirationTime": "2025-09-10T20:56:05Z"
}
],
"activeVersion": "sha1Fingerprint_SERVER_CERT_TWO ",
"kind": "sql#instancesListServerCertificates"
}
Salin kolom sha1Fingerprint
untuk versi yang ingin Anda roll back.
Cari versi dengan nilai createTime
yang lebih awal
sebelum versi dengan nilai sha1Fingerprint
yang ditunjukkan sebagai
activeVersion
.
Roll back rotasi.
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
PROJECT_ID : project ID
INSTANCE_ID : ID instance
Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID /instances/INSTANCE_ID /rotateServerCertificate
Meminta isi JSON:
{
"rotateServerCertificateContext": {"nextVersion": "sha1Fingerprint "}
}
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
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 /rotateServerCertificate"
PowerShell (Windows)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Simpan isi permintaan dalam file bernama request.json
,
dan jalankan perintah berikut:
$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 /rotateServerCertificate" | Select-Object -Expand Content
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"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 "
}
Melihat konten sertifikat CA
Anda dapat menggunakan utilitas openssl storeutl
untuk melihat konten sertifikat CA.
Saat menjalankan perintah beta sql ssl server-certs list , Anda selalu mendapatkan
beberapa sertifikat CA karena rantai kepercayaan.
Anda juga mungkin mendapatkan beberapa sertifikat CA dari operasi terkait rotasi sebelumnya.
gcloud
Jalankan perintah berikut:
gcloud beta sql ssl server-certs list \
--instance= INSTANCE_NAME \
--format= 'value(cert)' > temp_cert.pem
Ganti INSTANCE_NAME dengan nama instance.
Gunakan openssl
untuk memeriksa konten sertifikat CA.
openssl storeutl -noout -text temp_cert.pem
Melihat konten sertifikat server
Anda dapat menggunakan utilitas openssl
dan perintah daftar server-certs sql ssl beta
untuk melihat konten sertifikat server.
Saat menjalankan perintah gcloud CLI , Anda selalu mendapatkan
beberapa sertifikat CA karena rantai kepercayaan. Anda juga
mungkin mendapatkan beberapa sertifikat CA dari operasi
terkait rotasi sebelumnya.
gcloud
Hanya menggunakan openssl s_client
:
openssl s_client -starttls mysql -connect INSTANCE_IP_ADDRESS :3306
Ganti INSTANCE_IP_ADDRESS dengan alamat IP instance.
Menggunakan gcloud CLI
dan openssl storeutl
:
Jalankan perintah berikut:
gcloud beta sql ssl server-certs list \
--instance= INSTANCE_NAME \
--format= 'value(ssl_cert.cert)' > temp_cert.pem
Ganti INSTANCE_NAME dengan nama instance.
Gunakan openssl
untuk memeriksa konten sertifikat server.
openssl storeutl -noout -text temp_cert.pem
Mendownload paket root certificate dan CA regional
Anda dapat mendownload paket sertifikat CA root dan regional dari tabel
berikut.
Mereset konfigurasi SSL/TLS
Anda dapat sepenuhnya mereset konfigurasi SSL/TLS.
Perhatian: Melakukan tindakan ini akan menghilangkan kemampuan untuk terhubung ke instance Anda
melalui SSL/TLS sampai Anda membuat sertifikat klien baru untuk menggantikan
yang sebelumnya digunakan.
Konsol
Di konsol Google Cloud, buka halaman Instance Cloud SQL .
Buka Instance Cloud SQL
Untuk membuka halaman Ringkasan instance, klik nama instance.
Pilih Koneksi dari menu navigasi SQL.
Buka bagian Reset konfigurasi SSL .
Klik Reset Konfigurasi SSL .
gcloud
Muat ulang sertifikat:
gcloud sql instances reset-ssl-config INSTANCE_NAME
gcloud sql instances restart INSTANCE_NAME
Buat sertifikat klien baru .
REST v1beta4
Muat ulang sertifikat:
Sebelum menggunakan salah satu data permintaan,
lakukan penggantian berikut:
project-id : ID project
instance-id : ID instance
Metode HTTP dan URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /resetSslConfig
Untuk mengirim permintaan, perluas salah satu opsi berikut:
curl (Linux, macOS, atau Cloud Shell)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
, atau dengan menggunakan Cloud Shell ,
yang secara otomatis membuat Anda login ke gcloud
CLI
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
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)
Catatan:
Perintah berikut mengasumsikan bahwa Anda telah login ke
gcloud
CLI dengan akun pengguna Anda dengan menjalankan
gcloud init
atau
gcloud auth login
.
Anda dapat memeriksa akun yang saat ini aktif dengan menjalankan
gcloud auth list
.
Jalankan perintah berikut:
$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
Anda akan menerima respons JSON yang mirip dengan yang berikut ini:
Respons
{
"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 "
}
Buat sertifikat klien baru .
Langkah berikutnya