Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Ovladač Microsoft JDBC pro SQL Server podporuje spouštění v prostředích JVM nakonfigurovaných tak, aby vyhovovalo standardu FIPS 140.
Požadavky
- Nakonfigurovaný JVM podle FIPS
- Odpovídající certifikát TLS/SSL
- Vhodné soubory zásad
- Odpovídající parametry konfigurace
Nakonfigurovaný JVM podle FIPS
Obecně platí, že aplikace můžou soubor nakonfigurovat java.security tak, aby používaly poskytovatele kryptografických služeb kompatibilních se standardem FIPS. Informace o konfiguraci dodržování předpisů FIPS 140 najdete v dokumentaci týkající se prostředí JVM.
Pokud chcete zobrazit schválené moduly pro konfiguraci FIPS, přečtěte si informace o ověřených modulech v ověřovacím programu kryptografických modulů.
Dodavatelé můžou mít několik dalších kroků ke konfiguraci prostředí JVM s FIPS.
Odpovídající certifikát TLS
Pokud se chcete připojit k SQL Serveru v režimu FIPS, vyžaduje se platný certifikát TLS/SSL. Nainstalujte nebo naimportujte do úložiště klíčů Java na klientském počítači (JVM), kde je povolený FIPS.
Import certifikátu TLS v úložišti klíčů Java
V případě FIPS je pravděpodobně nutné importovat certifikát (.cert) buď ve formátu PKCS, nebo ve formátu specifickém pro poskytovatele. Pomocí následujícího fragmentu kódu naimportujte certifikát TLS/SSL a uložte ho do pracovního adresáře s odpovídajícím formátem úložiště klíčů. TRUST_STORE_PASSWORD je vaše heslo pro úložiště klíčů Java.
public void saveGenericKeyStore(
String provider,
String trustStoreType,
String certName,
String certPath
) throws KeyStoreException, CertificateException,
NoSuchAlgorithmException, NoSuchProviderException,
IOException
{
KeyStore ks = KeyStore.getInstance(trustStoreType, provider);
FileOutputStream os = new FileOutputStream("./MyTrustStore_" + trustStoreType);
ks.load(null, null);
ks.setCertificateEntry(certName, getCertificate(certPath));
ks.store(os, TRUST_STORE_PASSWORD.toCharArray());
os.flush();
os.close();
}
private Certificate getCertificate(String pathName)
throws FileNotFoundException, CertificateException
{
FileInputStream fis = new FileInputStream(pathName);
CertificateFactory cf = CertificateFactory.getInstance("X.509");
return cf.generateCertificate(fis);
}
Následující příklad importuje certifikát Azure TLS/SSL ve formátu PKCS12 s zprostředkovatelem BouncyCastle. Certifikát se naimportuje do pracovního adresáře s názvem MyTrustStore_PKCS12 pomocí následujícího fragmentu kódu:
saveGenericKeyStore(BCFIPS, PKCS12, "SQLAzure SSL Certificate Name", "SQLAzure.cer");
Vhodné soubory zásad
U některých poskytovatelů FIPS jsou potřeba neomezené soubory JAR zásad. V takových případech si pro Sun / Oracle stáhněte Java Cryptography Extension (JCE) soubory Unlimited Strength Jurisdiction Policy pro JRE 8 nebo JRE 7.
Odpovídající parametry konfigurace
Pokud chcete spustit ovladač JDBC v režimu kompatibilním se standardem FIPS, nakonfigurujte vlastnosti připojení, jak je znázorněno v následující tabulce.
Vlastnosti
| Vlastnictví | Typ | Výchozí | Description | Poznámky |
|---|---|---|---|---|
encrypt |
Řetězec ["true / false / strict"] | pravda | Pro vlastnost šifrování JVM s podporou FIPS by měla být true. | Výchozí hodnota se změnila z false na true ve verzi 10.2. Ve verzi 11.2.0 se typ změnil z logické hodnoty na String a byla přidána striktní možnost, aby byla povolena podpora TDS 8.0. |
TrustServerCertificate |
boolean ["pravda / nepravda"] | nepravda | Pro FIPS musí uživatel ověřit řetěz certifikátů, takže by měl pro tuto vlastnost použít hodnotu false . | |
trustStore |
String | null | Cesta k souboru v úložišti klíčů Java, kam jste certifikát naimportovali. Pokud nainstalujete certifikát do systému, nemusíte nic předávat. Ovladač používá soubory cacerts nebo jssecacerts. | |
trustStorePassword |
String | null | Heslo použité ke kontrole integrity dat trustStore. | |
fips |
boolean ["pravda / nepravda"] | nepravda | U prostředí JVM s povoleným protokolem FIPS by tato vlastnost měla být pravdivá. | Přidáno ve verzi 6.1.4 (stabilní verze 6.2.2) |
fipsProvider |
String | null | Poskytovatel FIPS nakonfigurovaný v prostředí JVM. Například BCFIPS nebo SunPKCS11-NSS | Přidáno ve verzi 6.1.2 (stabilní verze 6.2.2), zastaralé ve verzi 6.4.0. Další informace naleznete v tématu Odebrání vlastnosti připojení - fipsProvider. |
trustStoreType |
String | JKS | Pro režim FIPS nastavte typ úložiště důvěryhodnosti buď PKCS12, nebo typ definovaný poskytovatelem FIPS. | Přidáno ve verzi 6.1.2 (stabilní verze 6.2.2) |