Dela via


Rotcertifikatrotation för Azure Database for MySQL

För att upprätthålla våra säkerhet och efterlevnadsstandarder börjar vi ändra rotcertifikaten för Azure Database for MySQL – flexibel server efter den 1 september 2025.

Det aktuella rotcertifikatet DigiCert Global Root CA ersätts av två nya rotcertifikat:

  • DigiCert Global Root G2
  • Microsoft RSA Root Certificate Authority 2017

Om du använder TLS (Transport Layer Security) med rotcertifikatverifiering måste du ha alla tre rotcertifikaten installerade under övergångsperioden. När alla certifikat har bytts ut kan du ta bort det gamla SHA-1-rotcertifikatet DigiCert Global Root CA från lagringsplatsen. Om du inte lägger till de nya certifikaten före den 1 september 2025 misslyckas dina anslutningar till databaserna.

Den här artikeln innehåller instruktioner om hur du lägger till de två nya rotcertifikaten och svar på vanliga frågor.

Note

Om den fortsatta användningen av SHA-1 är en blockerare och du vill att dina certifikat ska ändras före den allmänna distributionen följer du anvisningarna i den här artikeln för att skapa ett kombinerat certifikatutfärdarcertifikat (CA) på klienten. Öppna sedan en supportbegäran för att rotera certifikatet för Azure Database for MySQL.

Varför krävs en rotcertifikatuppdatering?

Azure Database for MySQL-användare kan bara använda det fördefinierade certifikatet för att ansluta till sina MySQL-serverinstanser. Dessa certifikat signeras av en rotcertifikatutfärdare. Det aktuella certifikatet signeras av DigiCert Global Root CA. Den använder SHA-1. SHA-1-hashalgoritmen är betydligt osäker på grund av identifierade sårbarheter. Det är inte längre kompatibelt med våra säkerhetsstandarder.

Vi måste rotera certifikatet till ett som har signerats av en kompatibel rotcertifikatutfärdare för att åtgärda problemet.

Så här uppdaterar du rotcertifikatarkivet på klienten

Uppdatera rotcertifikatarkivet på klienten för att säkerställa att dina program kan ansluta till Azure Database for MySQL efter rotcertifikatrotationen. Uppdatera rotcertifikatarkivet om du använder SSL/TLS med rotcertifikatverifiering.

Följande steg vägleder dig genom processen att uppdatera rotcertifikatarkivet på klienten:

  1. Ladda ned de tre rotcertifikaten. Om du har installerat DigiCert Global Root CA-certifikatet kan du hoppa över den första nedladdningen:

  2. Ladda ned DigiCert Global Root CA-certifikatet.

  3. Ladda ned DigiCert Global Root G2-certifikatet.

  4. Ladda ned Microsoft RSA Root Certificate Authority 2017-certifikatet.

  5. Lägg till de nedladdade certifikaten i klientcertifikatarkivet. Processen varierar beroende på klienttyp.

Uppdatera Din Java-klient

Följ de här stegen för att uppdatera dina Java-klientcertifikat för rotcertifikatrotationen.

Skapa ett nytt betrott rotcertifikatarkiv

För Java-användare kör du dessa kommandon för att skapa ett nytt betrott rotcertifikatarkiv:

keytool -importcert -alias MySqlFlexServerCACert  -file digiCertGlobalRootCA.crt.pem  -keystore truststore -storepass password -noprompt
keytool -importcert -alias MySqlFlexServerCACert2  -file digiCertGlobalRootG2.crt.pem -keystore truststore -storepass password -noprompt
keytool -importcert -alias MicrosoftRSARootCert2017  -file MicrosoftRSARootCertificateAuthority2017.crt -keystore truststore -storepass password -noprompt

Ersätt sedan den ursprungliga nyckellagringsfilen med den nyligen genererade:

  • System.setProperty("javax.net.ssl.trustStore","path_to_truststore_file");
  • System.setProperty("javax.net.ssl.trustStorePassword","password");

Uppdatera ett befintligt betrott rotcertifikatarkiv

För Java-användare kör du dessa kommandon för att lägga till de nya betrodda rotcertifikaten i ett befintligt betrott rotcertifikatarkiv:

keytool -importcert -alias MySqlFlexServerCACert2  -file digiCertGlobalRootG2.crt.pem -keystore truststore -storepass password -noprompt
keytool -importcert -alias MicrosoftRSARootCert2017  -file MicrosoftRSARootCertificateAuthority2017.crt -keystore truststore -storepass password -noprompt

Om du uppdaterar ett befintligt nyckelarkiv behöver du inte ändra javax.net.ssl.trustStore egenskaperna och javax.net.ssl.trustStorePassword .

Uppdatera .NET-klienten

Följ de här stegen för att uppdatera .NET-klientcertifikaten för rotcertifikatrotationen.

.NET i Windows

För .NET-användare i Windows kontrollerar du att DigiCert Global Root CA, DigiCert Global Root G2 och Microsoft RSA Root Certificate Authority 2017 finns i Windows-certifikatarkivet under Betrodda rotcertifikatutfärdare. Om det inte finns något certifikat importerar du det.

Skärmbild av Azure Database for MySQL .NET-certifikat.

.NET på Linux

För .NET-användare på Linux som använder SSL_CERT_DIRkontrollerar du att DigiCertGlobalRootCA.crt.pem, DigiCertGlobalRootG2.crt.pemoch Microsoft RSA Root Certificate Authority 2017.crt.pem finns i katalogen som anges av SSL_CERT_DIR. Om det inte finns något certifikat skapar du den saknade certifikatfilen.

Konvertera certifikatet Microsoft RSA Root Certificate Authority 2017.crt till PEM-format genom att köra följande kommando:

openssl x509 -inform der -in MicrosoftRSARootCertificateAuthority2017.crt -out MicrosoftRSARootCertificateAuthority2017.crt.pem

Övriga klienter

För andra användare som använder andra klienter måste du skapa en kombinerad certifikatfil som innehåller alla tre rotcertifikaten.

Andra klienter som:

  • MySQL Workbench
  • C eller C++
  • Sätt igång
  • python
  • Rubin
  • PHP
  • Node.js
  • Perl
  • Swift

Steg

  1. Skapa en ny textfil och spara den som combined-ca-certificates.pem
  2. Kopiera och klistra in innehållet i alla tre certifikatfilerna i den här filen i följande format:
-----BEGIN CERTIFICATE-----
(Content from DigiCertGlobalRootCA.crt.pem)
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
(Content from DigiCertGlobalRootG2.crt.pem)
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
(Content from MicrosoftRSARootCertificateAuthority2017.crt.pem)
-----END CERTIFICATE-----

MySQL för datareplikering

För datareplikering där både primär och replik finns i Azure kan du sammanfoga CA-certifikatfilerna i det här formatet:

SET @cert = '-----BEGIN CERTIFICATE-----
(Root CA1:DigiCertGlobalRootCA.crt.pem)
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
(Root CA2: DigiCertGlobalRootG2.crt.pem)
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
(Root CA3: .crt.pem)
-----END CERTIFICATE-----'

Ring på mysql.az_replication_change_master följande sätt:

CALL mysql.az_replication_change_master('master.companya.com', 'syncuser', 'P@ssword!', 3306, 'mysql-bin.000002', 120, @cert);

Important

Starta om replikservern.