Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Amikor alkalmazásokat csatlakoztat Azure HorizonDB-hez, az alkalmazásügyfélnek megbízható főtanúsítványokat kell telepítenie. Az alábbi szakaszok végigvezetik az alkalmazások megbízható főtanúsítványainak frissítésén, ami gyakori forgatókönyv a Azure HorizonDB-példányhoz csatlakozó alkalmazások esetében.
Legfelső szintű hitelesítésszolgáltatói tanúsítványok importálása az ügyféloldali Java-kulcstárba tanúsítványrögzítési forgatókönyvekhez
Az egyénileg írt Java-alkalmazások egy alapértelmezett, úgynevezett cacertskulcstárat használnak, amely megbízható hitelesítésszolgáltatói (CA-) tanúsítványokat tartalmaz. Gyakran is Java megbízhatósági tárolónak nevezik. A tanúsítványfájl neve cacerts a java.home\lib\security biztonsági tulajdonságkönyvtárban található, ahol a java.home a futtatókörnyezet könyvtára (az jre SDK könyvtára vagy a Java™ 2 Futtatókörnyezet legfelső szintű könyvtára).
Az alábbi útmutatásokkal frissítheti az ügyféltanúsítványok legfelső szintű hitelesítésszolgáltatói tanúsítványait az ügyféltanúsítvány-rögzítési forgatókönyvekhez a PostgreSQL-lel:
Ellenőrizze a
cacertsJava keystore-t, hogy tartalmazza-e már a szükséges tanúsítványokat. A Java keystore-ban a következő paranccsal listázhatja a tanúsítványokat:keytool -list -v -keystore ..\lib\security\cacerts > outputfile.txtHa a szükséges tanúsítványok nem találhatók meg az ügyféloldali Java-kulcstárolóban, amint az a kimenetben ellenőrizhető, kövesse az alábbi utasításokat:
Készítsen biztonsági másolatot az egyéni kulcstárról.
Töltse le a tanúsítványokat, és mentse őket helyileg, ahol hivatkozhat rájuk.
Hozzon létre egy összevont hitelesítésszolgáltatói tanúsítványtárolót, amely tartalmazza az összes szükséges legfelső szintű hitelesítésszolgáltatói tanúsítványt. Az alábbi példa a DefaultJavaSSLFactory használatát mutatja be a PostgreSQL JDBC-felhasználók számára.
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 -nopromptCserélje le az eredeti keystore-fájlt az új létrehozott fájlra:
System.setProperty("javax.net.ssl.trustStore","path_to_truststore_file"); System.setProperty("javax.net.ssl.trustStorePassword","password");Cserélje le az eredeti legfelső szintű hitelesítésszolgáltatói pem-fájlt az egyesített legfelső szintű hitelesítésszolgáltatói fájlra, és indítsa újra az alkalmazást/ügyfelet.
Az ügyféltanúsítványok PostgreSQL JDBC-illesztővel való konfigurálásáról további információt ebben a dokumentációban talál.
Note
Ha tanúsítványokat szeretne importálni az ügyféltanúsítvány-tárolókba, előfordulhat, hogy a tanúsítvány .crt fájljait .pem formátumba kell konvertálnia. Használhatja a Transport Layer Security (TLS) protokollt az Azure HorizonDB-ben (előzetes verzió).
Megbízható tanúsítványok listájának lekérése a Java Key Store-ban programozott módon
Alapértelmezés szerint a Java egy speciális fájlban cacerts tárolja a megbízható tanúsítványokat, amely az ügyfél Java telepítési mappájában található.
Az alábbi példa először beolvassa és betölti cacerts a KeyStore-objektumba :
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;
}
Az alapértelmezett jelszó az cacertschangeit , de a valódi ügyfélen eltérőnek kell lennie, mivel a rendszergazdák azt javasolják, hogy a Java telepítése után azonnal módosítsa a jelszót.
Miután betöltöttük a KeyStore objektumot, a PKIXParameters osztály használatával olvashatjuk a jelen lévő tanúsítványokat.
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());
}
A legfelső szintű hitelesítésszolgáltatói tanúsítványok frissítése az Azure-alkalmazás Service-ben használt kliensek esetén, tanúsítványrögzítéshez
Az Azure-alkalmazás-szolgáltatások esetében, amelyek egy Azure HorizonDB-példányhoz csatlakoznak, két lehetséges forgatókönyvünk lehet az ügyféltanúsítványok frissítésére, és attól függ, hogyan használja az SSL-t az alkalmazással az Azure-alkalmazás Services szolgáltatásban.
- A rendszer platformszinten új tanúsítványokat ad hozzá az App Service-hez, mielőtt a Azure HorizonDB-példányban változások következnek be. Ha az App Service-platformon található SSL-tanúsítványokat használja az alkalmazásban, nincs szükség műveletre. További információ: TLS/SSL-tanúsítványok hozzáadása és kezelése az Azure App Service-ben az Azure App Service dokumentációjában.
- Ha kifejezetten bele van adva az SSL-tanúsítványfájl elérési útja a kódba, le kell töltenie az új tanúsítványt, és frissítenie kell a kódot a használatához. Jó példa erre a forgatókönyvre, ha egyéni tárolókat használ az App Service-ben, ahogyan az az Azure App Service dokumentációjában, az egyéni tárolókhoz készült oldalkocsis tároló konfigurálásának ismertetésében le van írva.
Főtanúsítvány-hitelesítésszolgáltatói tanúsítványok frissítése ügyfelek Azure Kubernetes Service (AKS) használata esetén a tanúsítvány rögzítési forgatókönyveihez
Ha a Azure HorizonDB-hez próbál csatlakozni Azure Kubernetes Service (AKS) üzemeltetett alkalmazások használatával, és tanúsítványokat rögzít, az hasonló a dedikált ügyfél gazdagépkörnyezetéből való hozzáféréshez. Tekintse meg a TLS bejövőforgalom-vezérlővel való használatának lépéseit az AKS-en.
A legfelső szintű hitelesítésszolgáltatói tanúsítványok frissítése Windows rendszeren a .NET-et (Npgsql) használó felhasználók számára tanúsítványrögzítési esetekben
Ha Ön olyan .NET- (Npgsql-) felhasználó, aki Windowson csatlakozik az Azure HorizonDB-hez, győződjön meg arról, hogy mindhárom tanúsítvány — Microsoft RSA Root Certificate Authority 2017, DigiCert Global Root G2 és DigiCert Global Root CA — megtalálható legyen a Windows tanúsítványtárolójának Megbízható legfelső szintű hitelesítésszolgáltatók tárában. Ha nem léteznek tanúsítványok, importálja a hiányzó tanúsítványt.
Más kliensek legfelső szintű hitelesítésszolgáltatói tanúsítványainak frissítése tanúsítványrögzítési esetekhez
Más PostgreSQL-ügyfélfelhasználók esetében két hitelesítésszolgáltatói tanúsítványfájlt egyesíthet a következő formátumban:
-----BEGIN CERTIFICATE-----
(Root CA1: DigiCertGlobalRootCA.crt.pem)
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
(Root CA2: Microsoft ECC Root Certificate Authority 2017.crt.pem)
-----END CERTIFICATE-----