Konfigurace připojení TLS na Azure Database for PostgreSQL – jeden server
Azure Database for PostgreSQL připojení klientských aplikací ke službě PostgreSQL pomocí protokolu TLS (Transport Layer Security), dříve označované SSL (Secure Sockets Layer) (SSL). Vynucení připojení TLS mezi databázovým serverem a klientskými aplikacemi pomáhá chránit před útoky prostředníky tím, že šifruje datový proud mezi serverem a vaší aplikací.
Ve výchozím nastavení je databázová služba PostgreSQL nakonfigurovaná tak, aby vyžadovala připojení TLS. Pokud vaše klientská aplikace nepodporuje připojení TLS, můžete zakázat vyžadování protokolu TLS.
Poznámka
Na základě zpětné vazby od zákazníků jsme do 15. února 2021 (15. 2. 2021) rozšířili vymazávání kořenového certifikátu pro naši stávající certifikační autoritu Baltimore Root.
Důležité
Platnost kořenového certifikátu SSL vyprší od 15. února 2021 (15. 2. 2021). Aktualizujte svou aplikaci tak, aby používat nový certifikát. Další informace najdete v tématu o plánovaných aktualizacích certifikátů.
Vynucování připojení TLS
Pro všechny Azure Database for PostgreSQL, které jsou zřízené prostřednictvím rozhraní Azure Portal a rozhraní příkazového řádku, je vynucování připojení TLS ve výchozím nastavení povolené.
Podobně připojovací řetězce, které jsou předdefinované v nastavení připojovacích řetězců na vašem serveru v Azure Portal, obsahují požadované parametry pro běžné jazyky pro připojení k databázovému serveru pomocí protokolu TLS. Parametr TLS se liší v závislosti na konektoru, například "ssl=true" nebo "sslmode=require" nebo "sslmode=required" a dalších variantách.
Konfigurace vynucení protokolu TLS
Volitelně můžete zakázat vynucování připojení TLS. Microsoft Azure vždy povolit nastavení Vynucení připojení SSL pro rozšířené zabezpečení.
Použití webu Azure Portal
Navštivte svůj Azure Database for PostgreSQL serveru a klikněte na Zabezpečení připojení. Pomocí přepínacího tlačítka povolte nebo zakažte nastavení Vynutit připojení SSL. Pak klikněte na Uložit.
Toto nastavení můžete potvrdit zobrazením stránky Přehled a zobrazením indikátoru stavu vynucení SSL.
Použití Azure CLI
Parametr ssl-enforcement můžete povolit nebo zakázat pomocí hodnot Enabled nebo v Azure Disabled CLI.
az postgres server update --resource-group myresourcegroup --name mydemoserver --ssl-enforcement Enabled
Ujistěte se, že vaše aplikace nebo rozhraní podporuje připojení TLS.
Některé aplikační architektury, které pro své databázové služby používají PostgreSQL, ve výchozím nastavení nepo povolují protokol TLS během instalace. Pokud server PostgreSQL vynucuje připojení TLS, ale aplikace nemá nakonfigurovaný protokol TLS, nemusí se aplikaci podařit připojit k vašemu databázovému serveru. Informace o povolení připojení TLS najdete v dokumentaci k vaší aplikaci.
Aplikace, které vyžadují ověření certifikátu pro připojení TLS
V některých případech aplikace pro zabezpečené připojení vyžadují místní soubor certifikátu vygenerovaný ze souboru certifikátu důvěryhodné certifikační autority ( CA). Certifikát pro připojení k serveru Azure Database for PostgreSQL se nachází v https://www.digicert.com/CACerts/BaltimoreCyberTrustRoot.crt.pem . Stáhněte si soubor certifikátu a uložte ho do upřednostňovaného umístění.
Na následujících odkazech najdete certifikáty pro servery v suverénních cloudech: Azure Government, Azure Chinaa Azure Germany.
Připojení s využitím psql
Následující příklad ukazuje, jak se připojit k serveru PostgreSQL pomocí nástroje příkazového řádku psql. K sslmode=verify-full vynucení ověření certifikátu TLS/SSL použijte nastavení připojovacího řetězce. Předejte parametru cestu k souboru místního sslrootcert certifikátu.
Následující příkaz je příkladem připojovacího řetězce psql:
psql "sslmode=verify-full sslrootcert=BaltimoreCyberTrustRoot.crt host=mydemoserver.postgres.database.azure.com dbname=postgres user=myusern@mydemoserver"
Tip
Ověřte, že hodnota předaná do sslrootcert odpovídá cestě k souboru pro certifikát, který jste uložili.
Vynucování protokolu TLS na Azure Database for PostgreSQL jedno serveru
Azure Database for PostgreSQL – Jeden server podporuje šifrování pro klienty, kteří se připojují k vašemu databázovému serveru pomocí protokolu TLS (Transport Layer Security). TLS je standardní oborový protokol, který zajišťuje zabezpečená síťová připojení mezi databázovým serverem a klientskými aplikacemi a umožňuje dodržovat požadavky na dodržování předpisů.
Nastavení protokolu TLS
Azure Database for PostgreSQL jeden server umožňuje vynucovat verzi protokolu TLS pro připojení klientů. Pokud chcete vynucovat verzi protokolu TLS, použijte nastavení možnosti Minimální verze protokolu TLS. Pro toto nastavení možnosti jsou povolené následující hodnoty:
| Minimální nastavení protokolu TLS | Podporovaná verze protokolu TLS klienta |
|---|---|
| TLSEnforcementDisabled (výchozí) | Nevyžaduje se protokol TLS. |
| TLS1_0 | TLS 1.0, TLS 1.1, TLS 1.2 a novější |
| TLS1_1 | TLS 1.1, TLS 1.2 a novější |
| TLS1_2 | TLS verze 1.2 a vyšší |
Například nastavení Minimální verze nastavení TLS na TLS 1.0 znamená, že váš server povolí připojení z klientů používajících protokoly TLS 1.0, 1.1 a 1.2 nebo novější. Případně nastavení na 1.2 znamená, že povolíte pouze připojení od klientů používajících protokol TLS 1.2+ a všechna připojení s protokolem TLS 1.0 a TLS 1.1 budou zamítnuta.
Poznámka
Ve výchozím Azure Database for PostgreSQL nevynucuje minimální verzi protokolu TLS (nastavení TLSEnforcementDisabled ).
Jakmile vynutíte minimální verzi protokolu TLS, nebude možné vynucení minimální verze zakázat.
Informace o tom, jak nastavit protokol TLS pro jedno Azure Database for PostgreSQL serveru, najdete v tématu Konfigurace nastavení protokolu TLS.
Podpora šifrování pomocí Azure Database for PostgreSQL jedno serveru
V rámci komunikace SSL/TLS se šifrované sady ověřují a s databázovým serverem mohou komunikovat pouze skafandry podpory šifer. Ověřování šifrovací sady se řídí ve vrstvě brány, a ne explicitně na samotném uzlu. Pokud šifrovací sady neodpovídají jedné z níže uvedených sad, příchozí připojení klientů budou odmítnuta.
Podporovaná šifrovací sada
- TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
- TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
- TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
- TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
Další kroky
Různé možnosti připojení aplikací v knihovnách připojení pro Azure Database for PostgreSQL.
- Informace o konfiguraci protokolu TLS