Sdílet prostřednictvím


Obměně kořenových certifikátů pro Azure Database for MySQL

Abychom zachovali standardy zabezpečení a dodržování předpisů, začneme po 1. září 2025 měnit kořenové certifikáty flexibilního serveru Azure Database for MySQL.

Aktuální kořenový certifikát DigiCert Global Root CA se nahrazuje dvěma novými kořenovými certifikáty:

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

Pokud používáte protokol TLS (Transport Layer Security) s ověřením kořenového certifikátu, musíte mít během přechodného období nainstalované všechny tři kořenové certifikáty. Po změně všech certifikátů můžete z úložiště odebrat starý kořenový certifikát SHA-1 DigiCert Global Root CA. Pokud nové certifikáty nepřidáte před 1. zářím 2025, vaše připojení k databázím selžou.

Tento článek obsahuje pokyny k přidání dvou nových kořenových certifikátů a odpovědí na nejčastější dotazy.

Note

Pokud je trvalé použití SHA-1 blokátorem a chcete, aby se certifikáty před obecným uvedením změnily, postupujte podle pokynů v tomto článku pro vytvoření kombinovaného certifikátu certifikační autority (CA) v klientovi. Pak otevřete žádost o podporu pro obměnu vašeho certifikátu pro Azure Database for MySQL.

Proč se vyžaduje aktualizace kořenového certifikátu?

Uživatelé Služby Azure Database for MySQL můžou k připojení k instancím serveru MySQL používat jenom předdefinovaný certifikát. Tyto certifikáty jsou podepsané kořenovou certifikační autoritou. Aktuální certifikát je podepsaný globální kořenovou certifikační autoritou DigiCert. Používá SHA-1. Algoritmus hash SHA-1 je značně nezabezpečený kvůli zjištěným chybám zabezpečení. Už nevyhovuje našim standardům zabezpečení.

Kvůli nápravě problému potřebujeme certifikát otočit na certifikát podepsaný kompatibilní kořenovou certifikační autoritou.

Postup aktualizace úložiště kořenových certifikátů v klientovi

Pokud chcete zajistit, aby se vaše aplikace mohly po obměně kořenového certifikátu připojit ke službě Azure Database for MySQL, aktualizujte úložiště kořenových certifikátů v klientovi. Pokud používáte PROTOKOL SSL/TLS s ověřením kořenového certifikátu, aktualizujte úložiště kořenových certifikátů.

Následující kroky vás provedou procesem aktualizace kořenového úložiště certifikátů na klientovi:

  1. Stáhněte si tři kořenové certifikáty. Pokud jste nainstalovali certifikát globální kořenové certifikační autority DigiCert , můžete první stažení přeskočit:

  2. Stáhněte si certifikát globální kořenové certifikační autority DigiCert.

  3. Stáhněte si certifikát DigiCert Global Root G2.

  4. Stáhněte certifikát kořenové certifikační autority Microsoft RSA 2017.

  5. Přidejte stažené certifikáty do úložiště klientských certifikátů. Proces se liší v závislosti na typu klienta.

Aktualizace klienta Java

Postupujte podle těchto kroků a aktualizujte klientské certifikáty Javy pro obměně kořenových certifikátů.

Vytvoření nového úložiště důvěryhodných kořenových certifikátů

Pro uživatele Javy spusťte tyto příkazy a vytvořte nové úložiště důvěryhodných kořenových certifikátů:

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

Potom nahraďte původní soubor úložiště klíčů nově vygenerovaným souborem:

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

Aktualizace existujícího úložiště důvěryhodných kořenových certifikátů

Pro uživatele Javy spusťte tyto příkazy a přidejte nové důvěryhodné kořenové certifikáty do existujícího úložiště důvěryhodných kořenových certifikátů:

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

Pokud aktualizujete existující úložiště klíčů, nemusíte měnit javax.net.ssl.trustStore vlastnosti a javax.net.ssl.trustStorePassword vlastnosti.

Aktualizace klienta .NET

Při aktualizaci klientských certifikátů .NET pro obměnu kořenových certifikátů postupujte takto.

.NET ve Windows

Pro uživatele .NET ve Windows se ujistěte, že v úložišti certifikátů Windows v úložišti certifikátů Systému Windows v rámci důvěryhodných kořenových certifikačních autorit existují certifikační autority DigiCert Global RootG2 a DigiCert Global Root G2 a Microsoft RSA Root Certificate Authority 2017. Pokud nějaký certifikát neexistuje, naimportujte ho.

Snímek obrazovky s certifikáty Azure Database for MySQL .NET

.NET v Linuxu

Pro uživatele .NET v Linuxu, kteří používají SSL_CERT_DIR, se ujistěte, že DigiCertGlobalRootCA.crt.pemDigiCertGlobalRootG2.crt.pem, a Microsoft RSA Root Certificate Authority 2017.crt.pem existují v adresáři označeném SSL_CERT_DIR. Pokud nějaký certifikát neexistuje, vytvořte chybějící soubor certifikátu.

Microsoft RSA Root Certificate Authority 2017.crt Převeďte certifikát do formátu PEM spuštěním následujícího příkazu:

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

Ostatní klienti

Pro ostatní uživatele, kteří používají jiné klienty, musíte vytvořit kombinovaný soubor certifikátu, který obsahuje všechny tři kořenové certifikáty.

Další klienti, například:

  • MySQL Workbench
  • C nebo C++
  • Go
  • Python
  • Ruby
  • PHP
  • Node.js
  • Perl
  • Swift

Postup

  1. Vytvoření nového textového souboru a jeho uložení jako combined-ca-certificates.pem
  2. Zkopírujte a vložte obsah všech tří souborů certifikátu do tohoto jediného souboru v následujícím formátu:
-----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-----

Replikace dat MySQL

V případě replikace příchozích dat, kde jsou primární i repliky hostované v Azure, můžete sloučit soubory certifikátů certifikační autority v tomto formátu:

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-----'

Zavolejte mysql.az_replication_change_master následujícím způsobem:

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

Important

Restartujte server repliky.