Auf dieser Seite wird beschrieben, wie Sie Ihre Server-CA-Zertifikate (Certificate Authority) verwalten.
Verschlüsselte Verbindungen verwenden 
Hier erhalten Sie weitere Informationen darüber, wie SQL Server verschlüsselte Verbindungen verwendet. 
Server-CA-Zertifikate verwalten (instanzbezogene CA) 
In diesem Abschnitt wird beschrieben, wie Sie Server-CA-Zertifikate verwalten, die intern von Cloud SQL erstellt werden. Dies ist der Standardmodus für Server-CA in Cloud SQL. In dieser Zertifizierungsstellenhierarchie erstellt Cloud SQL für jede Instanz eine Server-Zertifizierungsstelle.
Server-CA-Zertifikate rotieren 
Wenn Sie eine Benachrichtigung erhalten haben, dass Ihre Zertifikate ablaufen, oder eine Rotation auslösen möchten, führen Sie die folgenden Schritte aus, um die Rotation abzuschließen. Bevor Sie die Rotation starten, muss auf der Instanz eine neue Server-CA vorhanden sein. Wenn bereits eine neue Server-Zertifizierungsstelle erstellt wurde, können Sie den ersten Schritt im folgenden Verfahren überspringen.
  Erstellen Sie eine neue Server-CA. 
  Laden Sie die Informationen zum neuen Server-CA-zertifikat herunter: 
  Aktualisieren Sie Ihre Clients, sodass die Informationen zum neuen Server-CA-zertifikat verwendet werden. 
  Schließen Sie die Rotation ab. Dadurch wird das derzeit aktive Zertifikat in den Slot "Vorherige" verschoben und das neu hinzugefügte Zertifikat zum aktiven Zertifikat.  
Nach der Rotation des SSL-Zertifikats erhalten Ihre App Engine- und Cloud SQL Auth-Proxyverbindungen beim Verbindungsaufbau automatisch ein neues Zertifikat. 
  Console 
   Laden Sie das neue Server-CA-Zertifikat, das als PEM-Datei codiert ist, in Ihre lokale Umgebung herunter:
  
    
Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen .
Cloud SQL-Instanzen aufrufen 
 
    
Klicken Sie auf den Instanznamen, um die Seite Übersicht  einer Instanz zu öffnen.
 
    Wählen Sie im SQL-Navigationsmenü die Option Verbindung  aus. 
    Wählen Sie den Tab Sicherheit  aus. 
    Maximieren Sie Zertifikate verwalten . 
    Wählen Sie CA-Zertifikat rotieren  aus.
      Wenn keine zulässigen Zertifikate vorhanden sind, ist die Option zum Wechseln nicht verfügbar. Sie müssen ein neues Server-CA-Zertifikat  erstellen.
 
    Klicken Sie auf Zertifikate herunterladen . 
   
  Aktualisieren Sie alle Ihre SQL Server-Clients so, dass die neuen Informationen verwendet werden. Kopieren Sie hierzu die heruntergeladene Datei auf Ihre Client-Hostcomputer und ersetzen Sie die vorhandene server-ca.pem-Datei.
  Führen Sie nach der Aktualisierung der Clients die Rotation aus:
   
     Kehren Sie zum Tab Sicherheit  zurück. 
    Maximieren Sie Zertifikate verwalten . 
    Wählen Sie CA-Zertifikat rotieren  aus. 
    Prüfen Sie, ob die Clients sich korrekt verbinden. 
    Wenn es Clients gibt, die für den Verbindungsaufbau nicht das Zertifikat verwenden, zu dem gewechselt wurde, wählen Sie Rollback eines CA-Zertifikats ausführen  aus, um ein Rollback zur vorherigen Konfiguration durchzuführen .
    
 
  
    gcloud 
    
      Erstellen Sie ein Server-CA-Zertifikat: 
gcloud sql ssl server-ca-certs create \
--instance=INSTANCE   
      Laden Sie die Zertifikatsinformationen in eine lokale PEM-Datei herunter:
        
gcloud sql ssl server-ca-certs list \
--format="value(cert)" \
--instance=INSTANCE_NAME  > \
FILE_PATH /FILE_NAME .pem  
      Aktualisieren Sie alle Ihre Clients so, dass die neuen Informationen verwendet werden. Kopieren Sie hierzu die heruntergeladene Datei auf Ihre Client-Hostcomputer und ersetzen Sie die vorhandenen server-ca.pem-Dateien. 
      Führen Sie nach der Aktualisierung der Clients die Rotation aus:
      
gcloud sql ssl server-ca-certs rotate \
--instance=INSTANCE_NAME 
        
      Prüfen Sie, ob die Clients sich korrekt verbinden. 
      Gibt es Clients, die sich nicht mit dem gerade rotierten Zertifikat verbinden, können Sie ein Rollback  zur vorherigen Konfiguration durchführen.
     
   
  
    REST Version 1 
    
      Laden Sie die Server-CA-Zertifikate herunter:
      
      
  
  
  
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  project-id : die Projekt-IDinstance-id : die Instanz-ID 
HTTP-Methode und URL:
  
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /listServerCas  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
curl -X GET \project-id /instances/instance-id /listServerCas"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
  
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenproject-id /instances/instance-id /listServerCas" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort erhalten, die in etwa so aussieht:
    
Antwort 
  
{
  "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"
}
  
      Schließen Sie die Rotation ab:
      
      
  
  
  
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  project-id : die Projekt-IDinstance-id : die Instanz-ID 
HTTP-Methode und URL:
  
POST https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /rotateServerCa  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
    
    
  
  
  
  
  
curl -X POST \project-id /instances/instance-id /rotateServerCa"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
  
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenproject-id /instances/instance-id /rotateServerCa" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort erhalten, die in etwa so aussieht:
    
Antwort 
  
{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ",
  "status": "PENDING",
  "user": "[email protected] ",
  "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 
    
      Laden Sie die Server-CA-Zertifikate herunter:
      
      
  
  
  
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  project-id : die Projekt-IDinstance-id : die Instanz-ID 
HTTP-Methode und URL:
  
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /listServerCas  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
curl -X GET \project-id /instances/instance-id /listServerCas"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
  
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenproject-id /instances/instance-id /listServerCas" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort erhalten, die in etwa so aussieht:
    
Antwort 
  
{
  "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"
}
  
      Schließen Sie die Rotation ab:
      
      
  
  
  
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  project-id : die Projekt-IDinstance-id : die Instanz-ID 
HTTP-Methode und URL:
  
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /rotateServerCa  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
    
    
  
  
  
  
  
curl -X POST \project-id /instances/instance-id /rotateServerCa"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
  
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenproject-id /instances/instance-id /rotateServerCa" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort erhalten, die in etwa so aussieht:
    
Antwort 
  
{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ",
  "status": "PENDING",
  "user": "[email protected] ",
  "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 "
}
  
     
   
 
Wenn beim Versuch, ein Zertifikat zu rotieren, der Fehler No upcoming/previous Server CA Certificate exists angezeigt wird, prüfen Sie, ob Sie den Befehl auf einer Instanz ausführen, die die CA-Hierarchie pro Instanz verwendet.
Mit dem Befehl gcloud sql instances describe können Sie sehen, welche CA-Hierarchie für eine Cloud SQL-Instanz konfiguriert ist.
Weitere Informationen finden Sie unter Instanzinformationen ansehen .
Rollback der Zertifikatsrotation durchführen 
Nach Abschluss der Zertifikatsrotation müssen alle Clients das neue Zertifikat verwenden, um eine Verbindung mit der Cloud SQL-Instanz herstellen zu können. Wenn die Clients nicht korrekt aktualisiert wurden und die neuen Zertifikatsinformationen nicht verwenden, können sie keine SSL/TLS-Verbindung zur Instanz herstellen. In diesem Fall können Sie zur vorherigen Zertifikatskonfiguration zurückkehren.
Ein Rollback-Vorgang verschiebt das aktuell aktive Zertifikat in den Slot "Nächste". Das eventuell im Slot vorhandene Zertifikat wird dabei ersetzt. Das "vorherige" Zertifikat wird zum aktuell aktiven Zertifikat und die Zertifikatskonfiguration wird auf den Zustand vor Abschluss der Rotation zurückgesetzt.
Hinweis:  Ein Zertifikat-Rollback ist nur möglich, wenn das alte Zertifikat noch nicht abgelaufen ist. So kehren Sie zur vorherigen Zertifikatskonfiguration zurück:
  Console 
  
    
Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen .
Cloud SQL-Instanzen aufrufen 
 
    
Klicken Sie auf den Instanznamen, um die Seite Übersicht  einer Instanz zu öffnen.
 
    Wählen Sie im SQL-Navigationsmenü die Option Verbindung  aus. 
    Wählen Sie den Tab Sicherheit  aus. 
    Maximieren Sie Zertifikate verwalten . 
    Wählen Sie Rollback eines CA-Zertifikats ausführen  aus. Wenn keine zulässigen Zertifikate vorhanden sind, ist die Rollback-Option nicht verfügbar. Andernfalls ist die Rollback-Aktion nach einigen Sekunden abgeschlossen.
 
   
  
 
  gcloud 
   
gcloud sql ssl server-ca-certs rollback \
--instance=INSTANCE_NAME 
     
 
  REST Version 1 
   
   Laden Sie die Server-CA-Zertifikate herunter:
     
     
  
  
  
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  project-id : die Projekt-IDinstance-id : die Instanz-ID 
HTTP-Methode und URL:
  
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /listServerCas  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
curl -X GET \project-id /instances/instance-id /listServerCas"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
  
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenproject-id /instances/instance-id /listServerCas" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort erhalten, die in etwa so aussieht:
    
Antwort 
  
{
  "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"
}
  
  Kopieren Sie das Feld sha1Fingerprint für die Version, zu der Sie mit dem Rollback zurückkehren möchten.
     Das ist die Version, deren Wert für createTime unmittelbar vor der Version mit dem Wert activeVersion für sha1Fingerprint liegt.
 
     Machen Sie die Rotation rückgängig:
     
     
  
  
  
    
    
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  project-id : die Projekt-IDinstance-id : die Instanz-ID 
HTTP-Methode und URL:
  
POST https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /rotateServerCa  
JSON-Text anfordern:
  
{
  "rotateServerCaContext": {"nextVersion": "sha1Fingerprint "}
}
  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
      Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:
    
    
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
    
  
  
  
  
  
curl -X POST \project-id /instances/instance-id /rotateServerCa"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
      Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:
    
    
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
    
  
  
  
    
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenproject-id /instances/instance-id /rotateServerCa" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
    
Antwort 
  
{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ",
  "status": "PENDING",
  "user": "[email protected] ",
  "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 
   
   Laden Sie die Server-CA-Zertifikate herunter:
     
     
  
  
  
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  project-id : die Projekt-IDinstance-id : die Instanz-ID 
HTTP-Methode und URL:
  
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /listServerCas  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
curl -X GET \project-id /instances/instance-id /listServerCas"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
  
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenproject-id /instances/instance-id /listServerCas" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort erhalten, die in etwa so aussieht:
    
Antwort 
  
{
  "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"
}
  
  Kopieren Sie das Feld sha1Fingerprint für die Version, zu der Sie mit dem Rollback zurückkehren möchten.
     Das ist die Version, deren Wert für createTime unmittelbar vor der Version mit dem Wert activeVersion für sha1Fingerprint liegt.
 
     Machen Sie die Rotation rückgängig:
     
     
  
  
  
    
    
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  project-id : die Projekt-IDinstance-id : die Instanz-ID 
HTTP-Methode und URL:
  
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /rotateServerCa  
JSON-Text anfordern:
  
{
  "rotateServerCaContext": {"nextVersion": "sha1Fingerprint "}
}
  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
      Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:
    
    
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
    
  
  
  
  
  
curl -X POST \project-id /instances/instance-id /rotateServerCa"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
      Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:
    
    
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
    
  
  
  
    
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenproject-id /instances/instance-id /rotateServerCa" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
    
Antwort 
  
{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ",
  "status": "PENDING",
  "user": "[email protected] ",
  "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 "
}
  
    
  
 
Wenn Sie beim Versuch, die CA-Rotation eines Zertifikats rückgängig zu machen, den Fehler No upcoming/previous Server CA Certificate exists erhalten, prüfen Sie, ob Sie den Befehl auf einer Instanz ausführen, die die CA-Hierarchie pro Instanz verwendet.
Mit dem Befehl gcloud sql instances describe können Sie sehen, welche CA-Hierarchie für eine Cloud SQL-Instanz konfiguriert ist.
Weitere Informationen finden Sie unter Instanzinformationen ansehen .
Rotation einleiten 
Sie müssen nicht warten, bis die E-Mail von Cloud SQL kam, um eine Rotation starten.
Dies ist jederzeit möglich. Wenn Sie eine Rotation starten, wird ein neues Zertifikat erstellt und im Slot "Nächstes" abgelegt. Wenn zum Zeitpunkt der Anfrage bereits ein Zertifikat im Slot "Nächstes" vorhanden ist, wird dieses gelöscht.
Es kann nur ein "nächstes" Zertifikat geben.
So leiten Sie eine Rotation ein:
  Console 
  
    
Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen .
Cloud SQL-Instanzen aufrufen 
 
    
Klicken Sie auf den Instanznamen, um die Seite Übersicht  einer Instanz zu öffnen.
 
    Wählen Sie im SQL-Navigationsmenü die Option Verbindung  aus. 
    Wählen Sie den Tab Sicherheit  aus. 
    Maximieren Sie Zertifikate verwalten . 
    Klicken Sie auf Neues CA-Zertifikat erstellen . 
    Wählen Sie CA-Zertifikat rotieren  aus.
      Wenn keine zulässigen Zertifikate vorhanden sind, ist die Option zum Wechseln nicht verfügbar.
 
    Schließen Sie die Rotation ab, wie unter Server-CA-Zertifikate rotieren  beschrieben. 
   
  
 
  gcloud 
   
     Leiten Sie die Rotation ein:
     
gcloud sql ssl server-ca-certs create \
--instance=INSTANCE_NAME 
       
     Schließen Sie die Rotation ab, wie unter Server-CA-Zertifikate rotieren  beschrieben. 
    
  
 
  REST Version 1 
   
   
      
      
  
  
  
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  project-id : die Projekt-IDinstance-id : die Instanz-ID 
HTTP-Methode und URL:
  
POST https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id /rotateServerCa  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
    
    
  
  
  
  
  
curl -X POST \project-id /instances/instance-id /rotateServerCa"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
  
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenproject-id /instances/instance-id /rotateServerCa" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort erhalten, die in etwa so aussieht:
    
Antwort 
  
{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ",
  "status": "PENDING",
  "user": "[email protected] ",
  "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 "
}
  
   Schließen Sie die Rotation ab, wie unter Server-CA-Zertifikate rotieren  beschrieben. 
    
  
 
  REST v1beta4 
   
   
      
      
  
  
  
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  project-id : die Projekt-IDinstance-id : die Instanz-ID 
HTTP-Methode und URL:
  
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /rotateServerCa  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
    
    
  
  
  
  
  
curl -X POST \project-id /instances/instance-id /rotateServerCa"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
  
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenproject-id /instances/instance-id /rotateServerCa" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort erhalten, die in etwa so aussieht:
    
Antwort 
  
{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ",
  "status": "PENDING",
  "user": "[email protected] ",
  "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 "
}
  
   Schließen Sie die Rotation ab, wie unter Server-CA-Zertifikate rotieren  beschrieben. 
    
  
 
Informationen zu einem Server-CA-zertifikat abrufen 
Sie können Informationen zu Ihrem Server-CA-zertifikat wie Ablaufdatum oder Verschlüsselungsstufe abrufen.
Console 
  
Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen .
Cloud SQL-Instanzen aufrufen 
 
  
Klicken Sie auf den Instanznamen, um die Seite Übersicht  einer Instanz zu öffnen.
 
  Wählen Sie im SQL-Navigationsmenü die Option Verbindung  aus. 
  Wählen Sie den Tab Sicherheit  aus.
    Unter Server-CA-Zertifikate verwalten  sehen Sie in der Tabelle das Ablaufdatum Ihres Server-CA-Zertifikats.
     Rufen Sie den Zertifikatstyp mit dem Befehl gcloud sql ssl server-ca-certs list --instance=INSTANCE_NAME   ab.
 
    
    
gcloud 
gcloud  sql  ssl  server-ca-certs  list  \ 
--instance= INSTANCE_NAME   
REST Version 1 
  Beim Beschreiben der Instanz können Sie Details zum Server-CA-Zertifikat abrufen:
  
  
  
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  project-id : die Projekt-IDinstance-id : die Instanz-ID 
HTTP-Methode und URL:
  
GET https://sqladmin.googleapis.com/v1/projects/project-id /instances/instance-id ?fields=serverCaCert  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
curl -X GET \project-id /instances/instance-id ?fields=serverCaCert"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
  
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenproject-id /instances/instance-id ?fields=serverCaCert" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort erhalten, die in etwa so aussieht:
    
Antwort 
  
{
  "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 
  Beim Beschreiben der Instanz können Sie Details zum Server-CA-Zertifikat abrufen:
  
  
  
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  project-id : die Projekt-IDinstance-id : die Instanz-ID 
HTTP-Methode und URL:
  
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ?fields=serverCaCert  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
curl -X GET \project-id /instances/instance-id ?fields=serverCaCert"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
  
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenproject-id /instances/instance-id ?fields=serverCaCert" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort erhalten, die in etwa so aussieht:
    
Antwort 
  
{
  "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"
  }
}
  
 
Inhalt von CA-Zertifikaten ansehen 
Mit openssl storeutl können Sie den Inhalt von CA-Zertifikaten aufrufen.
Wenn Sie den Befehl sql ssl server-ca-certs list  ausführen, erhalten Sie möglicherweise mehrere CA-Zertifikate aus früheren rotationsbezogenen Vorgängen.
 
 gcloud 
 
 Führen Sie dazu diesen Befehl aus:
gcloud  sql  ssl  server-ca-certs  list  \ 
   --instance= INSTANCE_NAME   \ 
   --format= 'value(cert)'   >  temp_cert.pem Ersetzen Sie INSTANCE_NAME  durch den Namen der Instanz.
 
 Verwenden Sie openssl, um den Inhalt der CA-Zertifikate zu prüfen. 
   
openssl  storeutl  -noout  -text  temp_cert.pem
      
 
 
Inhalt eines Serverzertifikats ansehen 
Mit 
nmap können Sie den Inhalt von Serverzertifikaten aufrufen. 
nmap können Sie unter 
https://nmap.org/  herunterladen und installieren.
 
 gcloud 
 Führen Sie den folgenden Befehl aus, um den Inhalt des Serverzertifikats aufzurufen:
nmap -sV -p 1433 --script ssl-cert INSTANCE_IP_ADDRESS  -Pn
Ersetzen Sie INSTANCE_IP_ADDRESS  durch die IP-Adresse der Instanz.
  
 
Benachrichtigung über den Ablauf des SSL-Zertifikats auf einem externen Server 
  Wenn das Server-CA-Zertifikat des externen Servers abläuft, rotieren Sie die SSL-Zertifikate , einschließlich des Server-CA-Zertifikats in der lokalen Instanz. Dieser Schritt hängt davon ab, wie die lokale Instanz verwaltet wird. Die Schritte können variieren, wenn Sie beispielsweise ein RDS-Server-CA-Zertifikat, ein Cloud SQL-Server-CA-Zertifikat oder ein datenbankgenerisches Server-CA-Zertifikat verwenden. 
  Wenn das Clientzertifikat abläuft, müssen Sie ein neues Zertifikat und einen neuen Schlüssel generieren. Das gilt sowohl für von Google Cloudverwaltete SSL-Zertifikate als auch für selbst signierte Zertifikate. 
  Aktualisieren Sie die Cloud SQL-Quelldarstellungsinstanz mit den neuen SSL-Zertifikaten. 
 
Serverzertifikate verwalten (gemeinsame CA) 
In diesem Abschnitt wird beschrieben, wie Sie Serverzertifikate auf Instanzen verwalten, die freigegebene oder vom Kunden verwaltete CAs verwenden.
Sie können die Verwendung freigegebener CAs als Server-CA-Modus für Ihre Instanz aktivieren, indem Sie GOOGLE_MANAGED_CAS_CA für die Einstellung serverCaMode (Cloud SQL Admin API) oder das Flag --server-ca-mode (gcloud CLI ) angeben, wenn Sie Ihre Instanz erstellen .
Wenn Sie eine vom Kunden verwaltete Zertifizierungsstelle als Server-Zertifizierungsstellenmodus für Ihre Instanz verwenden möchten, müssen Sie CUSTOMER_MANAGED_CAS_CA für die Einstellung serverCaMode (Cloud SQL Admin API) oder das Flag --server-ca-mode (gcloud CLI ) angeben, wenn Sie Ihre Instanz erstellen . Außerdem benötigen Sie einen gültigen Zertifizierungsstellenpool und eine gültige Zertifizierungsstelle. Weitere Informationen finden Sie unter Vom Kunden verwaltete CA verwenden .
Serverzertifikate rotieren 
Wenn Sie eine Benachrichtigung erhalten haben, dass Ihre Serverzertifikate ablaufen, oder eine Rotation auslösen möchten, führen Sie die folgenden Schritte aus, um die Rotation abzuschließen.
Bevor Sie die Rotation starten, muss ein neues Serverzertifikat für die anstehende Rotation erstellt werden. Wenn bereits ein neues Serverzertifikat für die anstehende Rotation erstellt wurde, können Sie den ersten Schritt im folgenden Verfahren überspringen.
Führen Sie die folgenden Schritte aus, um das Serverzertifikat auf Ihrer Instanz zu rotieren:
Wenn Sie ein neues Serverzertifikat benötigen, erstellen Sie eines . 
  
Wenn Ihre Clients dem neuesten regionalen CA-Bundle bereits vertrauen, ist dieser Schritt optional. Wenn Sie Ihre Clients jedoch mit Server-CA-Informationen aktualisieren müssen, gehen Sie so vor:
Laden Sie die neuesten Server-CA-Informationen herunter. 
Aktualisieren Sie Ihre Clients, sodass die neuesten Informationen zur Server-CA verwendet werden. 
 Schließen Sie die Rotation ab, indem Sie das aktive Zertifikat in den vorherigen Slot verschieben und das neue Zertifikat zum aktiven Zertifikat machen.
 
   
     Console 
Laden Sie die als PEM-Datei codierten Informationen zum Server-CA-zertifikat in Ihre lokale Umgebung herunter:
  
    
Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen .
Cloud SQL-Instanzen aufrufen 
 
    
Klicken Sie auf den Instanznamen, um die Seite Übersicht  einer Instanz zu öffnen.
 
    Wählen Sie im SQL-Navigationsmenü die Option Verbindung  aus. 
    Wählen Sie den Tab Sicherheit  aus. 
    Maximieren Sie Zertifikate verwalten . 
    Prüfen Sie, ob die Option Serverzertifikat rotieren  als verfügbare Option angezeigt wird. Wählen Sie sie jedoch noch nicht aus.
      Wenn keine zulässigen Zertifikate vorhanden sind, ist die Option zum Wechseln nicht verfügbar. Sie müssen ein neues Serverzertifikat  erstellen.
 
    Klicken Sie auf Zertifikate herunterladen . 
   
Aktualisieren Sie alle Ihre SQL Server-Clients so, dass die neuen Informationen verwendet werden. Kopieren Sie hierzu die heruntergeladene Datei auf Ihre Client-Hostcomputer und ersetzen Sie die vorhandene server-ca.pem-Datei.
Führen Sie nach der Aktualisierung der Clients die Rotation aus:
   
    Kehren Sie zum Tab Sicherheit  zurück. 
    Maximieren Sie Zertifikate verwalten . 
    Wählen Sie Zertifikat wechseln  aus. 
    Klicken Sie im Dialogfeld Zertifikatwechsel bestätigen  auf Wechseln . 
    Prüfen Sie, ob die Clients sich korrekt verbinden.
    Wenn es Clients gibt, die für den Verbindungsaufbau nicht das Zertifikat verwenden, zu dem gewechselt wurde, wählen Sie Rollback eines Zertifikats ausführen  aus, um ein Rollback zur vorherigen Konfiguration durchzuführen .
 
 
  
    gcloud 
    
      Verwenden Sie den folgenden Befehl, um ein Serverzertifikat zu erstellen:
       
gcloud sql ssl server-certs create \
--instance=INSTANCE   
Ersetzen Sie INSTANCE  durch den Namen der Instanz.
      Achten Sie darauf, dass Sie das neueste CA-Bundle  verwenden.
       Wenn Sie nicht das neueste CA-Bundle verwenden, führen Sie den folgenden Befehl aus, um die neuesten Server-CA-Informationen für die Instanz in eine lokale PEM-Datei herunterzuladen:
        
gcloud sql ssl server-certs list \
--format="value(ca_cert.cert)" \
--instance=INSTANCE_NAME  > \
FILE_PATH /server-ca.pem Oder laden Sie die CA-Bundles von der Tabelle mit Root- und regionalen CA-Zertifikat-Bundles  auf dieser Seite herunter.
       Aktualisieren Sie dann alle Ihre Clients so, dass die neuen Server-CA-Informationen verwendet werden. Kopieren Sie hierzu die heruntergeladene Datei auf Ihre Client-Hostcomputer und ersetzen Sie die vorhandenen server-ca.pem-Dateien.
 
      Führen Sie nach der Aktualisierung aller Clients (falls Clientaktualisierungen erforderlich sind) die Rotation aus:
      
gcloud sql ssl server-certs rotate \
--instance=INSTANCE_NAME 
        
      Prüfen Sie, ob die Clients sich korrekt verbinden.
      Wenn es Clients gibt, die für den Verbindungsaufbau nicht das Serverzertifikat verwenden, zu dem neu rotiert wurde, führen Sie ein Rollback zur vorherigen Konfiguration durch .
        
 
   
  
    REST Version 1 
    
      Erstellen Sie ein Serverzertifikat.
      
      
  
  
  
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  PROJECT_ID : die Projekt-IDINSTANCE_ID : die Instanz-ID 
HTTP-Methode und URL:
  
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances/INSTANCE_ID /addServerCertificate  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
    
    
  
  
  
  
  
curl -X POST \PROJECT_ID /instances/INSTANCE_ID /addServerCertificate"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
  
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenPROJECT_ID /instances/INSTANCE_ID /addServerCertificate" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort erhalten, die in etwa so aussieht:
    
Antwort 
  
{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances/INSTANCE_ID ",
  "status": "PENDING",
  "user": "[email protected] ",
  "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 "
}
 Wenn Sie Informationen zum Server-CA-Zertifikat herunterladen müssen, können Sie den folgenden Befehl verwenden.
      
      
  
  
  
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  PROJECT_ID : die Projekt-IDINSTANCE_ID : die Instanz-ID 
HTTP-Methode und URL:
  
GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances/INSTANCE_ID /listServerCertificates  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
curl -X GET \PROJECT_ID /instances/INSTANCE_ID /listServerCertificates"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
  
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenPROJECT_ID /instances/INSTANCE_ID /listServerCertificates" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort erhalten, die in etwa so aussieht:
    
Antwort 
  
{
  "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"
}
 Schließen Sie die Rotation ab.
      
      
  
  
  
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  PROJECT_ID : die Projekt-IDINSTANCE_ID : die Instanz-ID 
HTTP-Methode und URL:
  
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances/INSTANCE_ID /rotateServerCertificate  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
    
    
  
  
  
  
  
curl -X POST \PROJECT_ID /instances/INSTANCE_ID /rotateServerCertificate"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
  
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenPROJECT_ID /instances/INSTANCE_ID /rotateServerCertificate" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort erhalten, die in etwa so aussieht:
    
Antwort 
  
{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances/INSTANCE_ID ",
  "status": "PENDING",
  "user": "[email protected] ",
  "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 
    
      Erstellen Sie ein Serverzertifikat.
      
      
  
  
  
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  PROJECT_ID : die Projekt-IDINSTANCE_ID : die Instanz-ID 
HTTP-Methode und URL:
  
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID /instances/INSTANCE_ID /addServerCertificate  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
    
    
  
  
  
  
  
curl -X POST \PROJECT_ID /instances/INSTANCE_ID /addServerCertificate"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
  
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenPROJECT_ID /instances/INSTANCE_ID /addServerCertificate" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort erhalten, die in etwa so aussieht:
    
Antwort 
  
{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID /instances/INSTANCE_ID ",
  "status": "PENDING",
  "user": "[email protected] ",
  "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 "
}
 Wenn Sie Informationen zum Server-CA-Zertifikat herunterladen müssen, können Sie den folgenden Befehl verwenden.
      
      
  
  
  
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  PROJECT_ID : die Projekt-IDINSTANCE_ID : die Instanz-ID 
HTTP-Methode und URL:
  
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID /instances/INSTANCE_ID /listServerCertificates  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
curl -X GET \PROJECT_ID /instances/INSTANCE_ID /listServerCertificates"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
  
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenPROJECT_ID /instances/INSTANCE_ID /listServerCertificates" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort erhalten, die in etwa so aussieht:
    
Antwort 
  
{
  "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"
}
 Schließen Sie die Rotation ab.
      
      
  
  
  
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  PROJECT_ID : die Projekt-IDINSTANCE_ID : die Instanz-ID 
HTTP-Methode und URL:
  
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID /instances/INSTANCE_ID /rotateServerCertificate  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
    
    
  
  
  
  
  
curl -X POST \PROJECT_ID /instances/INSTANCE_ID /rotateServerCertificate"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
  
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenPROJECT_ID /instances/INSTANCE_ID /rotateServerCertificate" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort erhalten, die in etwa so aussieht:
    
Antwort 
  
{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID /instances/INSTANCE_ID ",
  "status": "PENDING",
  "user": "[email protected] ",
  "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 "
}
  
   
 
Zertifikatsrotation rückgängig machen 
Nach Abschluss der Serverzertifikatsrotation müssen alle Clients das neue Zertifikat verwenden, um eine Verbindung mit der Cloud SQL-Instanz herstellen zu können. Wenn die Clients nicht korrekt aktualisiert wurden und die neuen Zertifikatsinformationen nicht verwenden, können sie keine SSL/TLS-Verbindung zur Instanz herstellen. In diesem Fall können Sie ein Rollback zur vorherigen Zertifikatskonfiguration durchführen.
Ein Rollback-Vorgang verschiebt das aktive Zertifikat in den Slot „Nächste“. Das eventuell im Slot vorhandene Zertifikat wird dabei ersetzt. Das „vorherige“ Zertifikat wird zum aktiven Zertifikat und die Zertifikatskonfiguration wird auf den Zustand vor Abschluss der Rotation zurückgesetzt.
 
  Console 
 
    
Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen .
Cloud SQL-Instanzen aufrufen 
 
    
Klicken Sie auf den Instanznamen, um die Seite Übersicht  einer Instanz zu öffnen.
 
    Wählen Sie im SQL-Navigationsmenü die Option Verbindung  aus. 
    Wählen Sie den Tab Sicherheit  aus. 
    Maximieren Sie Zertifikate verwalten . 
    Wählen Sie Rollback für Serverzertifikat durchführen  aus.
    Wenn keine zulässigen Zertifikate vorhanden sind, ist die Rollback-Option nicht verfügbar.
 
    Wählen Sie im Dialogfeld Rollback des Zertifikats bestätigen  die Option Rollback  aus.
    Das Zurücksetzen kann einige Sekunden dauern.
 
   
   
  
  gcloud 
   
gcloud sql ssl server-certs rollback \
--instance=INSTANCE_NAME 
     
 
  REST Version 1 
   
   Listen Sie Ihre Serverzertifikate auf.
     
     
  
  
  
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  PROJECT_ID : die Projekt-IDINSTANCE_ID : die Instanz-ID 
HTTP-Methode und URL:
  
GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances/INSTANCE_ID /listServerCertificates  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
curl -X GET \PROJECT_ID /instances/INSTANCE_ID /listServerCertificates"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
  
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenPROJECT_ID /instances/INSTANCE_ID /listServerCertificates" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort erhalten, die in etwa so aussieht:
    
Antwort 
  
{
  "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"
}
 Kopieren Sie das Feld sha1Fingerprint für die Version, zu der Sie mit dem Rollback zurückkehren möchten.
     Das ist die Version, deren Wert für createTime unmittelbar vor der Version mit dem Wert activeVersion für sha1Fingerprint liegt.
Machen Sie die Rotation rückgängig.
     
     
  
  
  
    
    
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  PROJECT_ID : die Projekt-IDINSTANCE_ID : die Instanz-ID 
  HTTP-Methode und URL:
  
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances/INSTANCE_ID /rotateServerCertificate  
JSON-Text anfordern:
  
{
  "rotateServerCertificateContext": {"nextVersion": "sha1Fingerprint "}
}
  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
      Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:
    
    
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
    
  
  
  
  
  
curl -X POST \PROJECT_ID /instances/INSTANCE_ID /rotateServerCertificate"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
      Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:
    
    
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
    
  
  
  
    
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenPROJECT_ID /instances/INSTANCE_ID /rotateServerCertificate" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
    
Antwort 
  
{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID /instances/INSTANCE_ID ",
  "status": "PENDING",
  "user": "[email protected] ",
  "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 
   
   Listen Sie Ihre Serverzertifikate auf.
     
     
  
  
  
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  PROJECT_ID : die Projekt-IDINSTANCE_ID : die Instanz-ID 
HTTP-Methode und URL:
  
GET https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID /instances/INSTANCE_ID /listServerCertificates  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
curl -X GET \PROJECT_ID /instances/INSTANCE_ID /listServerCertificates"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
  
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenPROJECT_ID /instances/INSTANCE_ID /listServerCertificates" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort erhalten, die in etwa so aussieht:
    
Antwort 
  
{
  "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"
}
 Kopieren Sie das Feld sha1Fingerprint für die Version, zu der Sie mit dem Rollback zurückkehren möchten.
     Das ist die Version, deren Wert für createTime unmittelbar vor der Version mit dem Wert activeVersion für sha1Fingerprint liegt.
Machen Sie die Rotation rückgängig.
     
     
  
  
  
    
    
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  PROJECT_ID : die Projekt-IDINSTANCE_ID : die Instanz-ID 
  HTTP-Methode und URL:
  
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID /instances/INSTANCE_ID /rotateServerCertificate  
JSON-Text anfordern:
  
{
  "rotateServerCertificateContext": {"nextVersion": "sha1Fingerprint "}
}
  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
      Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:
    
    
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
    
  
  
  
  
  
curl -X POST \PROJECT_ID /instances/INSTANCE_ID /rotateServerCertificate"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
      Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:
    
    
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
    
  
  
  
    
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenPROJECT_ID /instances/INSTANCE_ID /rotateServerCertificate" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
    
Antwort 
  
{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID /instances/INSTANCE_ID ",
  "status": "PENDING",
  "user": "[email protected] ",
  "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 "
}
  
   
  
Inhalt von CA-Zertifikaten ansehen 
Mit dem Dienstprogramm openssl storeutl können Sie sich den Inhalt von CA-Zertifikaten ansehen.
Wenn Sie den Befehl sql ssl server-certs list  ausführen, erhalten Sie aufgrund der Vertrauenskette immer mehrere CA-Zertifikate.
Möglicherweise erhalten Sie auch mehrere CA-Zertifikate aus früheren rotationsbezogenen Vorgängen.
 
 gcloud 
 
 Führen Sie dazu diesen Befehl aus:
gcloud  sql  ssl  server-certs  list  \ 
   --instance= INSTANCE_NAME   \ 
   --format= 'value(cert)'   >  temp_cert.pem Ersetzen Sie INSTANCE_NAME  durch den Namen der Instanz.
 
 Verwenden Sie openssl, um den Inhalt der CA-Zertifikate zu prüfen. 
   
openssl  storeutl  -noout  -text  temp_cert.pem
      
 
 
Root- und regionale CA-Zertifikatbündel für eine gemeinsame CA herunterladen 
Wenn Sie eine von Google verwaltete gemeinsame CA-Konfiguration verwenden, können Sie die Stamm- und regionalen CA-Zertifikatbündel aus der folgenden Tabelle herunterladen.
Diese Zertifikatbündel gelten nicht für Instanzen, die die Optionen „Pro Instanz“ oder „Vom Kunden verwaltete CA“ verwenden.
SSL/TLS-Konfiguration zurücksetzen 
Sie können die SSL/TLS-Konfiguration vollständig zurücksetzen.
Achtung : Nach diesem Vorgang ist es nicht mehr möglich, SSL/TLS-Verbindungen zur Instanz herzustellen. Sie müssen dazu erst neue Clientzertifikate erstellen, um die zuvor verwendeten zu ersetzen. 
Console 
  
    
Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen .
Cloud SQL-Instanzen aufrufen 
 
    
Klicken Sie auf den Instanznamen, um die Seite Übersicht  einer Instanz zu öffnen.
 
    Wählen Sie im SQL-Navigationsmenü die Option Verbindung  aus. 
    Gehen Sie zum Abschnitt SSL-Konfiguration zurücksetzen . 
    Klicken Sie auf SSL-Konfiguration zurücksetzen . 
     
 
gcloud 
  Aktualisieren Sie das Zertifikat:
gcloud  sql  instances  reset-ssl-config  INSTANCE_NAME   
 
REST v1beta4 
  Aktualisieren Sie das Zertifikat:
    
    
  
  
  
  
  
  
    
  
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
  project-id : die Projekt-IDinstance-id : die Instanz-ID 
HTTP-Methode und URL:
  
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id /resetSslConfig  
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
  curl (Linux, macOS oder Cloud Shell) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu haben Sie gcloud initgcloud auth loginCloud Shell  genutzt, die Sie automatisch bei der gcloud-Befehlszeile anmeldet.
          Um herauszufinden, welches Konto gerade aktiv ist, führen Sie gcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
    
    
  
  
  
  
  
curl -X POST \project-id /instances/instance-id /resetSslConfig"  
  PowerShell (Windows) 
  
  
    
      Hinweis:  Der folgende Befehl setzt voraus, dass Sie sich mit Ihrem Nutzerkonto bei der gcloud-Befehlszeile angemeldet haben. Dazu führen Sie gcloud initgcloud auth logingcloud auth list
    Führen Sie folgenden Befehl aus:
  
  
  
  
  
    
  
  
  
  
  
    
    
  
  
  
  
  
  
  
  
  
  
  
  
    
  
  
  
  
  
  
  
  
    
  
  
$cred = gcloud auth print-access-tokenproject-id /instances/instance-id /resetSslConfig" | Select-Object -Expand Content  
    Sie sollten eine JSON-Antwort erhalten, die in etwa so aussieht:
    
Antwort 
  
{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id /instances/instance-id ",
  "status": "PENDING",
  "user": "[email protected] ",
  "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 "
}
  
 
 
Nächste Schritte