Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Wanneer u toepassingen verbindt met Azure Database for PostgreSQL, moet de toepassingsclient vertrouwde basiscertificaten installeren. De volgende secties helpen u bij het bijwerken van de vertrouwde basiscertificaten voor toepassingen. Dit proces is een veelvoorkomend scenario voor toepassingen die verbinding maken met een Azure Database for PostgreSQL flexibele server.
Belangrijk
Microsoft roteert TLS-certificaten voor Azure Database for PostgreSQL om de certificeringsinstantie en de resulterende certificaatketen bij te werken.
Als uw clientconfiguratie gebruikmaakt van de aanbevolen configuraties voor TLS, hoeft u geen actie te ondernemen.
Planning voor tussenliggende certificaatrotatie:
- Updates voor Azure-regio's VS - west-centraal en Azië - oost zijn voltooid.
- Updates voor VK Zuid en VS-overheid beginnen op 21 januari 2026.
- Updates voor Centraal VS beginnen op 26 januari 2026.
- Updates voor alle andere regio's beginnen op 28 januari 2026.
Schema voor rotatie van basiscertificaten:
- Updates voor root-CA-certificaten van DigiCert Global Root CA (G1) naar DigiCert Global Root G2 in de regio's China worden vanaf 9 maart 2026 bijgewerkt.
Root-CA-certificaten importeren in het Java-sleutelarchief aan clientzijde, voor scenario's met certificaat-pinning
Aangepaste Java-toepassingen maken gebruik van een standaardsleutelarchief, genaamd cacerts, dat vertrouwde ca-certificaten (certificate authority) bevat. Het wordt ook wel Java Trust Store genoemd. Een certificaatbestand met de naam cacerts bevindt zich in de map met beveiligingseigenschappen, java.home\lib\securitywaar java.home zich de map van de runtime-omgeving bevindt (de jre map in de SDK of de map op het hoogste niveau van de Java ™ 2 Runtime-omgeving).
Als u client root CA-certificaten wilt bijwerken voor scenario's waarbij clientcertificaten aan PostgreSQL worden gekoppeld, volgt u de volgende aanwijzingen:
Controleer het
cacertsJava sleutelarchief om te zien of deze al vereiste certificaten bevat. U kunt certificaten in Java sleutelarchief weergeven met behulp van de volgende opdracht:keytool -list -v -keystore ..\lib\security\cacerts > outputfile.txtAls de benodigde certificaten niet aanwezig zijn in het Java sleutelarchief op de client, zoals u in de uitvoer kunt controleren, gaat u verder met de volgende aanwijzingen:
Maak een back-up van uw aangepaste sleutelarchief.
Download certificaten en sla ze lokaal op waar u ernaar kunt verwijzen.
Genereer een gecombineerd CA-certificaatarchief dat alle benodigde basis-CA-certificaten bevat. In het volgende voorbeeld ziet u hoe u
DefaultJavaSSLFactorygebruikt als PostgreSQL JDBC-gebruiker.keytool -importcert -alias PostgreSQLServerCACert -file D:\ DigiCertGlobalRootG2.crt.pem -keystore truststore -storepass password -noprompt keytool -importcert -alias PostgreSQLServerCACert2 -file "D:\ Microsoft ECC Root Certificate Authority 2017.crt.pem" -keystore truststore -storepass password -noprompt keytool -importcert -alias PostgreSQLServerCACert -file D:\ DigiCertGlobalRootCA.crt.pem -keystore truststore -storepass password -nopromptVervang het oorspronkelijke sleutelarchiefbestand door het nieuwe gegenereerde bestand:
System.setProperty("javax.net.ssl.trustStore","path_to_truststore_file"); System.setProperty("javax.net.ssl.trustStorePassword","password");Vervang het oorspronkelijke BASIS-CA PEM-bestand door het gecombineerde basis-CA-bestand en start de toepassing of client opnieuw op.
Raadpleeg deze documentatie voor meer informatie over het configureren van clientcertificaten met postgreSQL JDBC-stuurprogramma.
Opmerking
Als u certificaten wilt importeren in clientcertificaatarchieven, moet u certificaat .crt-bestanden mogelijk converteren naar PEM-indeling. U kunt het hulpprogramma OpenSSL gebruiken om deze bestandsconversies uit te voeren.
Programmatisch een lijst met vertrouwde certificaten ophalen in Java Key Store
In Java worden de vertrouwde certificaten standaard opgeslagen in een speciaal bestand met de naam cacerts dat zich in de Java-installatiemap op de client bevindt.
In het volgende voorbeeld wordt cacerts gelezen en geladen in een KeyStore-object:
private KeyStore loadKeyStore() {
String relativeCacertsPath = "/lib/security/cacerts".replace("/", File.separator);
String filename = System.getProperty("java.home") + relativeCacertsPath;
FileInputStream is = new FileInputStream(filename);
KeyStore keystore = KeyStore.getInstance(KeyStore.getDefaultType());
String password = "changeit";
keystore.load(is, password.toCharArray());
return keystore;
}
Het standaardwachtwoord cacerts ischangeit, maar het moet anders zijn op een echte client, omdat beheerders het wachtwoord direct na Java installatie aanraden te wijzigen.
Nadat u het KeyStore-object hebt geladen, gebruikt u de PKIXParameters-klasse om de aanwezige certificaten te lezen.
public void whenLoadingCacertsKeyStore_thenCertificatesArePresent() {
KeyStore keyStore = loadKeyStore();
PKIXParameters params = new PKIXParameters(keyStore);
Set<TrustAnchor> trustAnchors = params.getTrustAnchors();
List<Certificate> certificates = trustAnchors.stream()
.map(TrustAnchor::getTrustedCert)
.collect(Collectors.toList());
assertFalse(certificates.isEmpty());
}
Basiscertificaten van certificeringsinstanties bijwerken wanneer u clients gebruikt in Azure-app Services, in scenario's voor certificaat-pinning
Voor Azure-app Services die verbinding maken met een Azure Database for PostgreSQL flexibele server, zijn er twee mogelijke scenario's voor het bijwerken van clientcertificaten. Het scenario is afhankelijk van hoe u SSL gebruikt met uw toepassing die is geïmplementeerd in Azure-app Services.
- Het platform voegt nieuwe certificaten toe aan App Service voordat wijzigingen plaatsvinden op uw Azure Database for PostgreSQL flexibele server. Als u de SSL-certificaten gebruikt die zijn opgenomen in het App Service-platform in uw toepassing, hoeft u niets te doen. Zie TLS/SSL-certificaten toevoegen en beheren in Azure App Service in de Documentatie van Azure App Service voor meer informatie.
- Als u expliciet het pad naar het SSL-certificaatbestand in uw code opgeeft, moet u het nieuwe certificaat downloaden en de code bijwerken om het te gebruiken. Een goed voorbeeld van dit scenario is wanneer u aangepaste containers in App Service gebruikt, zoals beschreven in de zelfstudie: Een sidecarcontainer configureren voor aangepaste container in Azure App Service in de documentatie van Azure App Service.
Root-CA-certificaten bijwerken bij gebruik van clients in Azure Kubernetes Service (AKS) voor scenario's met certificaat-pinning
Als u verbinding probeert te maken met Azure Database for PostgreSQL met behulp van toepassingen die worden gehost in Azure Kubernetes Services (AKS) en certificaten vastmaken, is dit vergelijkbaar met toegang vanuit de hostomgeving van een toegewezen klant. Raadpleeg de stappen hier.
Root-CA-certificaten bijwerken voor gebruikers van .NET (Npgsql) op Windows, voor scenario's met certificaat-pinning
Voor .NET (Npgsql)-gebruikers op Windows die verbinding maken met Azure Database for PostgreSQL Flexible Server, moet u ervoor zorgen dat alle drie de volgende certificaten aanwezig zijn in het Windows-certificaatarchief onder Vertrouwde basiscertificeringsautoriteiten: Microsoft RSA Root Certificate Authority 2017, DigiCert Global Root G2 en DigiCert Global Root CA. Als er geen certificaten bestaan, importeert u het ontbrekende certificaat.
Werk root-CA-certificaten voor andere clients bij voor scenario's met certificaatvastzetting
Voor andere PostgreSQL-clientgebruikers kunt u twee CA-certificaatbestanden samenvoegen met behulp van de volgende indeling:
-----BEGIN CERTIFICATE-----
(Root CA1: DigiCertGlobalRootCA.crt.pem)
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
(Root CA2: Microsoft ECC Root Certificate Authority 2017.crt.pem)
-----END CERTIFICATE-----