|
2 | 2 | title: Application Insights availability tests
|
3 | 3 | description: Set up recurring web tests to monitor availability and responsiveness of your app or website.
|
4 | 4 | ms.topic: conceptual
|
5 |
| -ms.date: 04/28/2024 |
| 5 | +ms.date: 06/18/2024 |
6 | 6 | ms.reviewer: cogoodson
|
7 | 7 | ---
|
8 | 8 |
|
@@ -34,31 +34,145 @@ You can create up to 100 availability tests per Application Insights resource.
|
34 | 34 | > [!NOTE]
|
35 | 35 | > Availability tests are stored encrypted, according to [Azure data encryption at rest](../../security/fundamentals/encryption-atrest.md#encryption-at-rest-in-microsoft-cloud-services) policies.
|
36 | 36 |
|
37 |
| -## Troubleshooting |
| 37 | +## Availability Test TLS Support |
| 38 | +To provide best-in-class encryption, Availability Tests uses Transport Layer Security (TLS) 1.2 or higher as the encryption mechanism of choice. |
38 | 39 |
|
39 | 40 | > [!WARNING]
|
40 |
| -> We have recently enabled TLS 1.3 in Availability Tests. If you are seeing new error messages as a result, please ensure that clients running on Windows Server 2022 with TLS 1.3 enabled can connect to your endpoint. If you are unable to do this, you may consider temporarily disabling TLS 1.3 on your endpoint so that Availability Tests will fall back to older TLS versions. |
41 |
| -> For additional information, please check the [troubleshooting article](/troubleshoot/azure/azure-monitor/app-insights/troubleshoot-availability). |
42 |
| -See the dedicated [troubleshooting article](/troubleshoot/azure/azure-monitor/app-insights/troubleshoot-availability). |
| 41 | +> On 31 October 2024, in alignment with the [Azure wide legacy TLS deprecation](https://azure.microsoft.com/en-us/updates/azure-support-tls-will-end-by-31-october-2024-2/) TLS 1.0/1.1 protocol versions and TLS 1.2/1.3 legacy Cipher Suites and Elliptical Curves will be retired for Application Insights Availability Tests. |
| 42 | +
|
| 43 | +### Supported TLS Configurations |
| 44 | +TLS protocol versions 1.2 and 1.3 are supported encryption mechanisms for Availability Tests. In addition, the following Cipher Suites and Elliptical Curves are also supported within each version. |
| 45 | +> [!NOTE] |
| 46 | +> TLS 1.3 is currently only available in these Availability Test regions: NorthCentralUS, CentralUS, EastUS, SouthCentralUS, WestUS |
| 47 | +
|
| 48 | +#### TLS 1.2 |
| 49 | +**Cipher Suites** |
| 50 | +- TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 |
| 51 | +- TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 |
| 52 | +- TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 |
| 53 | +- TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 |
| 54 | +- TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 |
| 55 | +- TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 |
| 56 | +- TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 |
| 57 | +- TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 |
| 58 | + |
| 59 | +**Elliptical Curves** |
| 60 | +- NistP384 |
| 61 | +- NistP256 |
| 62 | + |
| 63 | +#### TLS 1.3 |
| 64 | +**Cipher Suites** |
| 65 | +- TLS_AES_256_GCM_SHA384 |
| 66 | +- TLS_AES_128_GCM_SHA256 |
| 67 | + |
| 68 | +**Elliptical Curves:** |
| 69 | +- NistP384 |
| 70 | +- NistP256 |
| 71 | + |
| 72 | +### Deprecating TLS Configuration |
| 73 | +> [!WARNING] |
| 74 | +> After 31 October 2024, protocol versions TLS 1.0 and 1.1 support will be completely removed. In addition, the following Cipher Suites and Elliptical Curves will be retired. |
| 75 | +
|
| 76 | +#### TLS 1.0 |
| 77 | +**Cipher Suites** |
| 78 | +- TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA |
| 79 | +- TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA |
| 80 | +- TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA |
| 81 | +- TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA |
| 82 | +- TLS_RSA_WITH_AES_256_CBC_SHA |
| 83 | +- TLS_RSA_WITH_AES_128_CBC_SHA |
| 84 | + |
| 85 | +**Elliptical Curves** |
| 86 | +- curve25519 |
| 87 | + |
| 88 | +#### TLS 1.1 |
| 89 | +**Cipher Suites:** |
| 90 | +- TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA |
| 91 | +- TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA |
| 92 | +- TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA |
| 93 | +- TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA |
| 94 | +- TLS_RSA_WITH_AES_256_CBC_SHA |
| 95 | +- TLS_RSA_WITH_AES_128_CBC_SHA |
| 96 | + |
| 97 | +**Elliptical Curves** |
| 98 | +- curve25519 |
| 99 | + |
| 100 | +> [!NOTE] |
| 101 | +> After 31 October 2024, only the listed Cipher Suites and Elliptical Curves within these TLS 1.2 and TLS 1.3 will be retired. |
| 102 | +
|
| 103 | +#### TLS 1.2 |
| 104 | +**Cipher Suites** |
| 105 | +- TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA |
| 106 | +- TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA |
| 107 | +- TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA |
| 108 | +- TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA |
| 109 | +- TLS_RSA_WITH_AES_256_GCM_SHA384 |
| 110 | +- TLS_RSA_WITH_AES_128_GCM_SHA256 |
| 111 | +- TLS_RSA_WITH_AES_256_CBC_SHA256 |
| 112 | +- TLS_RSA_WITH_AES_128_CBC_SHA256 |
| 113 | +- TLS_RSA_WITH_AES_256_CBC_SHA |
| 114 | +- TLS_RSA_WITH_AES_128_CBC_SHA |
| 115 | + |
| 116 | +**Elliptical Curves:** |
| 117 | +- curve25519 |
| 118 | + |
| 119 | +#### TLS 1.3 |
| 120 | +**Elliptical Curves** |
| 121 | +- curve25519 |
43 | 122 |
|
44 | 123 | ## Frequently asked questions
|
45 | 124 |
|
46 | 125 | This section provides answers to common questions.
|
47 | 126 |
|
48 |
| -### Can I run Availability tests on an intranet server? |
| 127 | +### General |
| 128 | + |
| 129 | +#### Can I run Availability tests on an intranet server? |
49 | 130 |
|
50 | 131 | Our [web tests](/previous-versions/azure/azure-monitor/app/monitor-web-app-availability) run on points of presence that are distributed around the globe. There are two solutions:
|
51 | 132 |
|
52 | 133 | * **Firewall door**: Allow requests to your server from [the long and changeable list of web test agents](../ip-addresses.md).
|
53 | 134 | * **Custom code**: Write your own code to send periodic requests to your server from inside your intranet. You could run Visual Studio web tests for this purpose. The tester could send the results to Application Insights by using the `TrackAvailability()` API.
|
54 | 135 |
|
55 |
| -### What is the user agent string for availability tests? |
| 136 | +#### What is the user agent string for availability tests? |
56 | 137 |
|
57 | 138 | The user agent string is **Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; AppInsights**
|
58 | 139 |
|
| 140 | +### TLS Support |
| 141 | + |
| 142 | +#### How does this deprecation impact my web test behavior? |
| 143 | +Availability Tests acts as a distributed client in each of the supported web test locations. Every time a web test is executed the Availability Test service attempts to reach out to the remote endpoint defined in the web test configuration. A TLS Client Hello message is sent which contains all the currently supported TLS configuration. If the remote endpoint shares a common TLS configuration with the Availability Test client, then the TLS handshake succeeds. Otherwise, the web test fails with a TLS handshake failure. |
| 144 | + |
| 145 | +#### How do I ensure my web test isn't impacted? |
| 146 | +To avoid any impact, each remote endpoint (including dependent requests) your web test interacts with needs to support at least one combination of the same Protocol Version, Cipher Suite, and Elliptical Curve that Availability Test does. If the remote endpoint doesn't support the needed TLS configuration, it needs to be updated with support for some combination of the above-mentioned post-deprecation TLS configuration. These endpoints can be discovered through viewing the [Transaction Details](/azure/azure-monitor/app/availability-standard-tests) of your web test (ideally for a successful web test execution). |
| 147 | + |
| 148 | +> [!NOTE] |
| 149 | +> For steps to enable the needed TLS configuration on your web server, it is best to reach out to the team that owns the hosting platform your web server runs on if the process is not known. |
| 150 | +
|
| 151 | +#### After October 31, 2024, what will the web test behavior be for impacted tests? |
| 152 | +There's no one exception type that all TLS handshake failures impacted by this deprecation would present themselves with. However, the most common exception your web test would start failing with would be `The request was aborted: Couldn't create SSL/TLS secure channel`. You should also be able to see any TLS related failures in the TLS Transport” [Troubleshooting Step](/troubleshoot/azure/azure-monitor/app-insights/availability/diagnose-ping-test-failure) for the web test result that is potentially impacted. |
| 153 | + |
| 154 | +#### How do I validate what TLS configuration a remote endpoint supports? |
| 155 | +There are several tools available to test what TLS configuration an endpoint supports. One way would be to follow the example detailed on this [page](/security/engineering/solving-tls1-problem). If your remote endpoint isn't available via the Public internet, you need to ensure you validate the TLS configuration supported on the remote endpoint from a machine that has access to call your endpoint. |
| 156 | + |
| 157 | +#### Can I view what TLS configuration is currently in use by my web test? |
| 158 | +The TLS configuration negotiated during a web test execution can't be viewed. As long as the remote endpoint supports common TLS configuration with Availability Tests, no impact should be seen post-deprecation. |
| 159 | + |
| 160 | +#### Which components does the deprecation affect in the Availability Test Service? |
| 161 | +The TLS deprecation detailed in this document should only affect the Availability Test web test execution behavior after October 31, 2024. For more information about interacting with the Availability Test service for CRUD operations, see [Azure Resource Manager TLS Support](/azure/azure-resource-manager/management/tls-support). This resource provides more details on TLS support and deprecation timelines. |
| 162 | + |
| 163 | +#### Where can I get TLS support? |
| 164 | +For any general questions around the legacy TLS problem, see [Solving TLS problems](/security/engineering/solving-tls1-problem). |
| 165 | + |
| 166 | +## Troubleshooting |
| 167 | + |
| 168 | +> [!WARNING] |
| 169 | +> We have recently enabled TLS 1.3 in Availability Tests. If you are seeing new error messages as a result, please ensure that clients running on Windows Server 2022 with TLS 1.3 enabled can connect to your endpoint. If you are unable to do this, you may consider temporarily disabling TLS 1.3 on your endpoint so that Availability Tests will fall back to older TLS versions. |
| 170 | +> For additional information, please check the [troubleshooting article](/troubleshoot/azure/azure-monitor/app-insights/troubleshoot-availability). |
| 171 | +See the dedicated [troubleshooting article](/troubleshoot/azure/azure-monitor/app-insights/troubleshoot-availability). |
| 172 | + |
59 | 173 | ## Next steps
|
60 | 174 |
|
61 | 175 | * [Availability alerts](availability-alerts.md)
|
62 | 176 | * [Standard tests](availability-standard-tests.md)
|
63 |
| -* [Create and run custom availability tests using Azure Functions](availability-azure-functions.md) |
| 177 | +* [Availability tests using Azure Functions](availability-azure-functions.md) |
64 | 178 | * [Web tests Azure Resource Manager template](/azure/templates/microsoft.insights/webtests?tabs=json)
|
0 commit comments