Een basiscertificaat instellen voor serververificatie

IMPORTANT
De TLS/SSL-certificaten op productieomgevingen voor de API voor interactieve posters van Query Service zijn op woensdag 24 januari 2024 vernieuwd.
Hoewel dit een jaarlijks vereiste is, is het wortelcertificaat in de ketting ook veranderd aangezien de Adobe TLS/SSL certificaatleverancier hun certificaathiërarchie heeft bijgewerkt. Dit kan gevolgen hebben voor bepaalde klanten van Postgres als hun lijst van de Autoriteiten van het Certificaat de wortelcert mist. Een PSQL CLI-client moet bijvoorbeeld de basiscertificaten toevoegen aan een expliciet bestand ~/postgresql/root.crt , anders kan dit resulteren in een fout. Bijvoorbeeld psql: error: SSL error: certificate verify failed . Zie de officiële documentatie PostgreSQLvoor meer informatie over deze kwestie.
het wortelcertificaat om toe te voegen kan van https://cacerts.digicert.com/DigiCertGlobalRootG2.crt.pemworden gedownload.

Om een veilige verbinding te verzekeren, moet SSL gebruik op zowel de cliënt als de server worden gevormd alvorens de verbinding wordt gemaakt. Als SSL slechts op de server wordt gevormd, zou de cliënt gevoelige informatie zoals wachtwoorden kunnen verzenden alvorens het wordt gevestigd dat de server hoge veiligheid vereist.

Standaard voert PostgreSQL geen verificatie van het servercertificaat uit. Als u de identiteit van de server wilt verifiëren en een beveiligde verbinding wilt garanderen voordat vertrouwelijke gegevens worden verzonden (als onderdeel van de SSL verify-full -modus), moet u een basiscertificaat (zelfondertekend) op uw lokale computer (root.crt ) en een bladcertificaat dat is ondertekend door het basiscertificaat op de server plaatsen.

Als de parameter sslmode is ingesteld op verify-full , controleert libpq of de server betrouwbaar is door de certificaatketen tot aan het basiscertificaat te controleren dat op de client is opgeslagen. Vervolgens wordt gecontroleerd of de hostnaam overeenkomt met de naam die is opgeslagen in het servercertificaat.

Als u verificatie met servercertificaten wilt toestaan, moet u een of meer basiscertificaten (root.crt) in het PostgreSQL -bestand in de thuismap plaatsen. Het bestandspad lijkt op ~/.postgresql/root.crt .