Skip to content

Commit 1a6b7c3

Browse files
author
gitName
committed
[APIM] TLS 1.3 support - classic tiers
1 parent 7f15efb commit 1a6b7c3

File tree

1 file changed

+55
-7
lines changed

1 file changed

+55
-7
lines changed

articles/api-management/api-management-howto-manage-protocols-ciphers.md

Lines changed: 55 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ author: dlepow
66

77
ms.service: azure-api-management
88
ms.topic: how-to
9-
ms.date: 08/02/2022
9+
ms.date: 08/01/2025
1010
ms.author: danlep
1111
---
1212

@@ -15,12 +15,12 @@ ms.author: danlep
1515
[!INCLUDE [api-management-availability-all-tiers](../../includes/api-management-availability-all-tiers.md)]
1616

1717
Azure API Management supports multiple versions of Transport Layer Security (TLS) protocol to secure API traffic for:
18-
* Client side
19-
* Backend side
18+
* Client side (client to API Management gateway)
19+
* Backend side (API Management gateway to backend)
2020

2121
API Management also supports multiple cipher suites used by the API gateway.
2222

23-
By default, API Management enables TLS 1.2 for client and backend connectivity and several supported cipher suites. This guide shows you how to manage protocols and ciphers configuration for an Azure API Management instance.
23+
Depending on the service tier, API Management supports TLS 1.2 or TLS 1.3 by default for client and backend connectivity and several supported cipher suites. This guide shows you how to manage protocols and ciphers configuration for an Azure API Management instance.
2424

2525
:::image type="content" source="media/api-management-howto-manage-protocols-ciphers/api-management-protocols-ciphers.png" alt-text="Screenshot of managing protocols and ciphers in the Azure portal.":::
2626

@@ -35,19 +35,67 @@ By default, API Management enables TLS 1.2 for client and backend connectivity a
3535

3636
[!INCLUDE [api-management-navigate-to-instance.md](../../includes/api-management-navigate-to-instance.md)]
3737

38-
## How to manage TLS protocols cipher suites
38+
## How to manage TLS protocols and cipher suites
3939

4040
1. In the left navigation of your API Management instance, under **Security**, select **Protocols + ciphers**.
4141
1. Enable or disable desired protocols or ciphers.
4242
1. Select **Save**.
4343

44-
Changes can take 1 hour or longer to apply. An instance in the Developer service tier has downtime during the process. Instances in the Basic and higher tiers don't have downtime during the process.
44+
Changes can take some time to apply. An instance in the Developer service tier has downtime during the process. Instances in the Basic and higher tiers don't have downtime during the process.
4545

4646
> [!NOTE]
4747
> Some protocols or cipher suites (such as backend-side TLS 1.2) can't be enabled or disabled from the Azure portal. Instead, you'll need to apply the REST API call. Use the `properties.customProperties` structure in the [Create/Update API Management Service](/rest/api/apimanagement/current-ga/api-management-service/create-or-update) REST API.
4848
49+
## TLS 1.3 support
50+
51+
52+
<!-- Questions:
53+
54+
1. In v1/Consumption tiers, is TLS 1.2 also enabled by default, or is it only TLS 1.3?
55+
2. Is TLS 1.3 supported in v2 tiers for client-side and backend-side connections?
56+
3. What ciphers are supported in TLS 1.3?
57+
4. Can TLS 1.3 be enabled/disabled via REST API
58+
5. On backend side, is TLS 1.2 also enabled by default? -->
59+
60+
TLS 1.3 support is available in the API Management **Consumption**, **Developer**, **Basic**, **Standard**, and **Premium** service tiers. TLS 1.3 is enabled by default for client-side connections in most instances created in these service tiers. Enabling backend-side TLS 1.3 is optional.
61+
62+
TLS 1.3 is a major revision of the TLS protocol that provides improved security and performance. It includes features such as reduced handshake latency and improved security against certain types of attacks.
63+
64+
### Optionally enable TLS 1.3 when clients require certificate renegotiation
65+
66+
TLS-compliant clients that require certificate renegotiation are not compatible with TLS 1.3. If your API Management service is detected to have received TLS connections that require certificate renegotiation, enabling client-side TLS 1.3 in your instance is *optional*.
67+
68+
You can review the recent connections that required certificate renegotiation in the **Protocols + ciphers** page and decide whether to enable TLS 1.3 for client-side connections:
69+
70+
1. On the **Protocols + ciphers** page, in the **Client protocol** section, next to **TLS 1.3**, select **View and manage configuration**.
71+
1. Review the list of **Recent client certificate renegotiations**. The list shows API operations where clients recently used client certificate renegotiation.
72+
1. If you choose to enable TLS 1.3 for client-side connections, select **Enable**.
73+
1. Select **Close**.
74+
75+
> [!WARNING]
76+
> * If your APIs are accessed by TLS-compliant clients that rely on certificate renegotiation, enabling TLS 1.3 for client-side connections will cause those clients to fail to connect.
77+
> * We recommend carefully monitoring the **Recent client certificate renegotiations** list before enabling TLS 1.3 for client-side connections.
78+
> * After enabling TLS 1.3, review gateway request metrics or TLS-related exceptions in Application Insights. If necessary, you can disable TLS 1.3 for client-side connections and downgrade to TLS 1.2
79+
80+
### Optionally disable TLS 1.3
81+
82+
If you need to disable TLS 1.3 for client-side connections, you can do so from the **Protocols + ciphers** page:
83+
84+
1. On the **Protocols + ciphers** page, in the **Client protocol** section, next to **TLS 1.3**, select **View and manage configuration**.
85+
1. Select **Disable**.
86+
1. Select **Close**.
87+
88+
### Backend-side TLS 1.3
89+
90+
Enabling backend-side TLS 1.3 is optional. If you enable it, API Management will use TLS 1.3 for connections to your backend services that support it.
91+
92+
You can enable backend-side TLS 1.3 from the **Protocols + ciphers** page:
93+
94+
1. On the **Protocols + ciphers** page, in the **Backend protocol** section, enable the **TLS 1.3** setting.
95+
1. Select **Save**.
96+
4997
## Related content
5098

5199
* For recommendations on securing your API Management instance, see [Azure security baseline for API Management](/security/benchmark/azure/baselines/api-management-security-baseline).
52-
* Learn about security considerations in the API Management [landing zone accelerator](/azure/cloud-adoption-framework/scenarios/app-platform/api-management/security).
100+
* Learn about security considerations in the API Management [Architecture best practices for API Management](azure/well-architected/service-guides/azure-api-management#).
53101
* Learn more about [TLS](/dotnet/framework/network-programming/tls).

0 commit comments

Comments
 (0)