You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Azure Database for PostgreSQL Single Server successfully completed the root certificate change on **February 15, 2021 (02/15/2021)** as part of standard maintenance and security best practices. This article gives you more details about the changes, the resources affected, and the steps needed to ensure that your application maintains connectivity to your database server.
17
+
Azure Database for PostgreSQL Single Server planning the root certificate change starting **October, 2022 (10/2022)** as part of standard maintenance and security best practices. This article gives you more details about the changes, the resources affected, and the steps needed to ensure that your application maintains connectivity to your database server.
18
18
19
19
## Why root certificate update is required?
20
20
21
-
Azure database for PostgreSQL users can only use the predefined certificate to connect to their PostgreSQL server, which is located [here](https://www.digicert.com/CACerts/BaltimoreCyberTrustRoot.crt.pem). However, [Certificate Authority (CA) Browser forum](https://cabforum.org/) recently published reports of multiple certificates issued by CA vendors to be non-compliant.
21
+
Historically, Azure database for PostgreSQL users could only use the predefined certificate to connect to their PostgreSQL server, which is located [here](https://www.digicert.com/CACerts/BaltimoreCyberTrustRoot.crt.pem). However, [Certificate Authority (CA) Browser forum](https://cabforum.org/) recently published reports of multiple certificates issued by CA vendors to be non-compliant.
22
22
23
23
As per the industry's compliance requirements, CA vendors began revoking CA certificates for non-compliant CAs, requiring servers to use certificates issued by compliant CAs, and signed by CA certificates from those compliant CAs. Since Azure Database for MySQL used one of these non-compliant certificates, we needed to rotate the certificate to the compliant version to minimize the potential threat to your MySQL servers.
24
24
25
-
The new certificate is rolled out and in effect starting February 15, 2021 (02/15/2021).
25
+
The new certificate is rolled out and in effect starting October, 2022 (10/2022).
26
26
27
-
## What change was performed on February 15, 2021 (02/15/2021)?
27
+
## What change will be performed starting October 2022 (10/2022)?
28
28
29
-
On February 15, 2021, the [BaltimoreCyberTrustRoot root certificate](https://www.digicert.com/CACerts/BaltimoreCyberTrustRoot.crt.pem)was replaced with a **compliant version**of the same [BaltimoreCyberTrustRoot root certificate](https://www.digicert.com/CACerts/BaltimoreCyberTrustRoot.crt.pem) to ensure existing customers do not need to change anything and there is no impact to their connections to the server. During this change, the [BaltimoreCyberTrustRoot root certificate](https://www.digicert.com/CACerts/BaltimoreCyberTrustRoot.crt.pem) was **not replaced** with [DigiCertGlobalRootG2](https://cacerts.digicert.com/DigiCertGlobalRootG2.crt.pem) and that change is deferred to allow more time for customers to make the change.
29
+
Starting October 2022, the [BaltimoreCyberTrustRoot root certificate](https://www.digicert.com/CACerts/BaltimoreCyberTrustRoot.crt.pem)will be replaced with a **compliant version**known as [DigiCertGlobalRootG2 root certificate](https://www.digicert.com/CACerts/BaltimoreCyberTrustRoot.crt.pem). If your applications take advantage of **verify-ca** or **verify-full** as value of [**sslmode** parameter](https://www.postgresql.org/docs/current/libpq-ssl.html) in the database client connectivity will need to follow directions below to add new certificates to certificate store to maintain connectivity.
30
30
31
31
## Do I need to make any changes on my client to maintain connectivity?
32
32
33
-
There is no change required on client side. if you followed our previous recommendation below, you will still be able to continue to connect as long as **BaltimoreCyberTrustRoot certificate is not removed** from the combined CA certificate. **We recommend to not remove the BaltimoreCyberTrustRoot from your combined CA certificate until further notice to maintain connectivity.**
33
+
There are no code or application changes required on client side. if you follow our previous recommendation below, you will still be able to continue to connect as long as **BaltimoreCyberTrustRoot certificate isn't removed** from the combined CA certificate. **We recommend to not remove the BaltimoreCyberTrustRoot from your combined CA certificate until further notice to maintain connectivity.**
34
34
35
35
### Previous Recommendation
36
36
37
37
* Download BaltimoreCyberTrustRoot & DigiCertGlobalRootG2 Root CA from links below:
* For .NET (Npgsql) users on Windows, make sure **Baltimore CyberTrust Root** and **DigiCert Global Root G2** both exist in Windows Certificate Store, Trusted Root Certification Authorities. If any certificates do not exist, import the missing certificate.
60
+
* For .NET (Npgsql) users on Windows, make sure **Baltimore CyberTrust Root** and **DigiCert Global Root G2** both exist in Windows Certificate Store, Trusted Root Certification Authorities. If any certificates don't exist, import the missing certificate.
57
61
58
62

59
63
60
-
* For .NET (Npgsql) users on Linux using SSL_CERT_DIR, make sure **BaltimoreCyberTrustRoot** and **DigiCertGlobalRootG2** both exist in the directory indicated by SSL_CERT_DIR. If any certificates do not exist, create the missing certificate file.
64
+
* For .NET (Npgsql) users on Linux using SSL_CERT_DIR, make sure **BaltimoreCyberTrustRoot** and **DigiCertGlobalRootG2** both exist in the directory indicated by SSL_CERT_DIR. If any certificates don't exist, create the missing certificate file.
61
65
62
66
* For other PostgreSQL client users, you can merge two CA certificate files like this format below
63
67
@@ -72,13 +76,7 @@ There is no change required on client side. if you followed our previous recomme
72
76
* In future, after the new certificate deployed on the server side, you can change your CA pem file to DigiCertGlobalRootG2.crt.pem.
73
77
74
78
> [!NOTE]
75
-
> Please do not drop or alter **Baltimore certificate**until the cert change is made. We will send a communication once the change is done, after which it is safe for them to drop the Baltimore certificate.
76
-
77
-
## Why was BaltimoreCyberTrustRoot certificate not replaced to DigiCertGlobalRootG2 during this change on February 15, 2021?
78
-
79
-
We evaluated the customer readiness for this change and realized many customers were looking for additional lead time to manage this change. In the interest of providing more lead time to customers for readiness, we have decided to defer the certificate change to DigiCertGlobalRootG2 for at least a year providing sufficient lead time to the customers and end users.
80
-
81
-
Our recommendations to users is, use the aforementioned steps to create a combined certificate and connect to your server but do not remove BaltimoreCyberTrustRoot certificate until we send a communication to remove it.
79
+
> Please don't drop or alter **Baltimore certificate** until the cert change is made. We will send a communication once the change is done, after which it is safe for them to drop the Baltimore certificate.
82
80
83
81
## What if we removed the BaltimoreCyberTrustRoot certificate?
84
82
@@ -88,18 +86,18 @@ You will start to connectivity errors while connecting to your Azure Database fo
88
86
89
87
### 1. If I am not using SSL/TLS, do I still need to update the root CA?
90
88
91
-
No actions required if you are not using SSL/TLS.
89
+
No actions required if you aren't using SSL/TLS.
92
90
93
91
### 2. If I am using SSL/TLS, do I need to restart my database server to update the root CA?
94
92
95
-
No, you do not need to restart the database server to start using the new certificate. This is a client-side change and the incoming client connections need to use the new certificate to ensure that they can connect to the database server.
93
+
No, you don't need to restart the database server to start using the new certificate. This is a client-side change and the incoming client connections need to use the new certificate to ensure that they can connect to the database server.
96
94
97
95
### 3. How do I know if I'm using SSL/TLS with root certificate verification?
98
96
99
97
You can identify whether your connections verify the root certificate by reviewing your connection string.
100
98
- If your connection string includes `sslmode=verify-ca` or `sslmode=verify-full`, you need to update the certificate.
101
99
- If your connection string includes `sslmode=disable`, `sslmode=allow`, `sslmode=prefer`, or `sslmode=require`, you do not need to update certificates.
102
-
- If your connection string does not specify sslmode, you do not need to update certificates.
100
+
- If your connection string doesn't specify sslmode, you don't need to update certificates.
103
101
104
102
If you are using a client that abstracts the connection string away, review the client's documentation to understand whether it verifies certificates. To understand PostgreSQL sslmode review the [SSL mode descriptions](https://www.postgresql.org/docs/11/libpq-ssl.html#ssl-mode-descriptions) in PostgreSQL documentation.
105
103
@@ -121,11 +119,10 @@ For connector using Self-hosted Integration Runtime where you explicitly include
121
119
122
120
### 7. Do I need to plan a database server maintenance downtime for this change?
123
121
124
-
No. Since the change here is only on the client side to connect to the database server, there is no maintenance downtime needed for the database server for this change.
122
+
No. Since the change here is only on the client side to connect to the database server, there's no maintenance downtime needed for the database server for this change.
125
123
126
-
### 8. If I create a new server after February 15, 2021 (02/15/2021), will I be impacted?
127
-
128
-
For servers created after February 15, 2021 (02/15/2021), you will continue to use the [BaltimoreCyberTrustRoot](https://www.digicert.com/CACerts/BaltimoreCyberTrustRoot.crt.pem) for your applications to connect using SSL.
124
+
### 8. If I create a new server after October 2022 (10/2022), will I be impacted?
125
+
For servers created after October 2022 (10/2022), you will continue to use the [BaltimoreCyberTrustRoot](https://www.digicert.com/CACerts/BaltimoreCyberTrustRoot.crt.pem) together with new [DigiCertGlobalRootG2](https://cacerts.digicert.com/DigiCertGlobalRootG2.crt.pem) root certificates in your database client SSL certificate store for your applications to connect using SSL.
129
126
130
127
### 9. How often does Microsoft update their certificates or what is the expiry policy?
131
128
@@ -141,12 +138,16 @@ To verify if you are using SSL connection to connect to the server refer [SSL ve
141
138
142
139
### 12. Is there an action needed if I already have the DigiCertGlobalRootG2 in my certificate file?
143
140
144
-
No. There is no action needed if your certificate file already has the **DigiCertGlobalRootG2**.
141
+
No. There's no action needed if your certificate file already has the **DigiCertGlobalRootG2**.
145
142
146
143
### 13. What if you are using docker image of PgBouncer sidecar provided by Microsoft?
147
-
148
-
A new docker image which supports both [**Baltimore**](https://www.digicert.com/CACerts/BaltimoreCyberTrustRoot.crt.pem) and [**DigiCert**](https://cacerts.digicert.com/DigiCertGlobalRootG2.crt.pem) is published to below [here](https://hub.docker.com/_/microsoft-azure-oss-db-tools-pgbouncer-sidecar) (Latest tag). You can pull this new image to avoid any interruption in connectivity starting February 15, 2021.
144
+
A new docker image which supports both [**Baltimore**](https://www.digicert.com/CACerts/BaltimoreCyberTrustRoot.crt.pem) and [**DigiCert**](https://cacerts.digicert.com/DigiCertGlobalRootG2.crt.pem) is published to below [here](https://hub.docker.com/_/microsoft-azure-oss-db-tools-pgbouncer-sidecar) (Latest tag). You can pull this new image to avoid any interruption in connectivity starting October, 2022.
149
145
150
146
### 14. What if I have further questions?
147
+
If you have questions, get answers from community experts in [Microsoft Q&A](mailto:[email protected]). If you have a support plan and you need technical help please create a [support request](https://learn.microsoft.com/azure/azure-portal/supportability/how-to-create-azure-support-request):
148
+
* For *Issue type*, select *Technical*.
149
+
* For *Subscription*, select your *subscription*.
150
+
* For *Service*, select *My Services*, then select *Azure Database for PostgreSQL – Single Server*.
151
+
* For *Problem type*, select *Security*.
152
+
* For *Problem subtype*, select *Azure Encryption and Infrastructure Double Encryption*
151
153
152
-
If you have questions, get answers from community experts in [Microsoft Q&A](mailto:[email protected]). If you have a support plan and you need technical help, [contact us](mailto:[email protected])
0 commit comments