Konfigurace protokolu TLS ve službě Azure Cosmos DB for PostgreSQL

PLATÍ PRO: Azure Cosmos DB for PostgreSQL (využívá rozšíření databáze Citus na PostgreSQL)

Koordinační uzel vyžaduje, aby se klientské aplikace připojily pomocí protokolu TLS (Transport Layer Security). Vynucení protokolu TLS mezi databázovým serverem a klientskými aplikacemi pomáhá udržovat přenášená data v tajnosti. Další nastavení ověřování popsané níže také chrání před útoky "man-in-the-middle".

Vynucování připojení TLS

Aplikace používají "připojovací řetězec" k identifikaci cílové databáze a nastavení pro připojení. Různí klienti vyžadují různá nastavení. Seznam připojovacích řetězců používaných běžnými klienty najdete v části Připojovací řetězce pro váš cluster v Azure Portal.

Parametry ssl protokolu TLS se sslmode liší v závislosti na možnostech konektoru, například ssl=true nebo sslmode=require nebo sslmode=required.

Ujistěte se, že vaše aplikace nebo architektura podporuje připojení TLS.

Některá aplikační rozhraní ve výchozím nastavení nepovolují protokol TLS pro připojení PostgreSQL. Bez zabezpečeného připojení se ale aplikace nemůže připojit ke koordinačnímu uzlu. 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 vyžadují pro zabezpečené připojení soubor místního certifikátu vygenerovaného ze souboru certifikátu důvěryhodné certifikační autority (.cer). Certifikát pro připojení ke službě Azure Cosmos DB for PostgreSQL se nachází na adrese https://cacerts.digicert.com/DigiCertGlobalRootG2.crt.pem. Stáhněte si soubor certifikátu a uložte ho do upřednostňovaného umístění.

Poznámka

Pokud chcete zkontrolovat pravost certifikátu, můžete pomocí nástroje příkazového řádku OpenSSL ověřit otisk jeho otisku sha-256:

openssl x509 -in DigiCertGlobalRootG2.crt.pem -noout -sha256 -fingerprint

# should output:
# CB:3C:CB:B7:60:31:E5:E0:13:8F:8D:D3:9A:23:F9:DE:47:FF:C3:5E:43:C1:14:4C:EA:27:D4:6A:5A:B1:CB:5F

Připojení pomocí psql

Následující příklad ukazuje, jak se připojit ke koordinačnímu uzlu pomocí nástroje příkazového řádku psql. K vynucení ověření certifikátu TLS použijte nastavení připojovacího sslmode=verify-full řetězce. Předejte do parametru cestu k místnímu sslrootcert souboru certifikátu.

Níže je příklad připojovacího řetězce psql:

psql "sslmode=verify-full sslrootcert=DigiCertGlobalRootG2.crt.pem host=c-mydemocluster.12345678901234.postgres.cosmos.azure.com dbname=citus user=citus password=your_pass"

Tip

Ověřte, že hodnota předaná parametru sslrootcert odpovídá cestě k souboru uloženého certifikátu.

Další kroky

Zvyšte zabezpečení ještě více pomocí pravidel brány firewall ve službě Azure Cosmos DB for PostgreSQL.