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
# Troubleshooting applications that don’t support TLS 1.2
19
20
This article describes how to enable the older TLS protocols (TLS 1.0 and 1.1) as well as applying legacy cipher suites to support the additional protocols on the Windows Server 2019 cloud service web and worker roles.
20
21
@@ -23,7 +24,7 @@ We understand that while we are taking steps to deprecate TLS 1.0 and TLS 1.1, o
23
24
> [!NOTE]
24
25
> Guest OS Family 6 releases enforces TLS 1.2 by disabling 1.0/1.1 ciphers.
25
26
26
-
27
+
27
28
## Dropping support for TLS 1.0, TLS 1.1 and older cipher suites
28
29
In support of our commitment to use best-in-class encryption, Microsoft announced plans to start migration away from TLS 1.0 and 1.1 in June of 2017. Since that initial announcement, Microsoft announced our intent to disable Transport Layer Security (TLS) 1.0 and 1.1 by default in supported versions of Microsoft Edge and Internet Explorer 11 in the first half of 2020. Similar announcements from Apple, Google, and Mozilla indicate the direction in which the industry is headed.
29
30
@@ -32,7 +33,7 @@ The Windows Server 2019 cloud server image is configured with TLS 1.0 and TLS 1.
32
33
33
34
The server also comes with a limited set of cipher suites:
34
35
35
-
```Powershell
36
+
```
36
37
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
37
38
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
38
39
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
@@ -42,14 +43,15 @@ The server also comes with a limited set of cipher suites:
42
43
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
43
44
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
44
45
```
45
-
46
+
46
47
## Step 1: Create the PowerShell script to enable TLS 1.0 and TLS 1.1
47
48
48
-
Use the following code as an example to create a script that enables the older protocols and cipher suites. For the purposes of this documentation, this script will be named: TLSsettings.ps1.
49
-
49
+
Use the following code as an example to create a script that enables the older protocols and cipher suites. For the purposes of this documentation, this script will be named: **TLSsettings.ps1**. Store this script on your local desktop for easy access in later steps.
50
+
51
+
50
52
```Powershell
51
53
#******************* FUNCTION THAT ACTUALLY UPDATES KEYS; WILL RETURN REBOOT FLAG IF CHANGES ***********************
52
-
54
+
53
55
Function Set-CryptoSetting {
54
56
param (
55
57
$regKeyName,
@@ -64,64 +66,64 @@ Function Set-CryptoSetting {
64
66
If (!(Test-Path -Path $regKeyName)) {
65
67
New-Item $regKeyName | Out-Null
66
68
}
67
-
69
+
68
70
# Get data of registry value, or null if it does not exist
4) In the file explorer, navigate to your desktop where you stored the **TLSsettings.ps1** and **RunTLSSettings.cmd** files
254
+
5) Select the two files to add them to your Cloud Services project
255
+
256
+
## Step 6: Enable Copy to Output Directory
257
+
258
+
To ensure the scripts are uploaded with every update pushed from Visual Studio, the setting *Copy to Output Directory* needs to be set to *Copy Always*
259
+
260
+
1) Under your WebRole, right-click on RunTLSSettings.cmd
261
+
2) Select **Properties**
262
+
3) In the properties tab, change *Copy to Output Directory* to *Copy Always"*
263
+
4) Repeat the steps for **TLSsettings.ps1**
264
+
265
+
## Step 7: Publish & Validate
266
+
267
+
Now that the above steps have been complete, publish the update to your existing Cloud Service.
246
268
247
269
You can use [SSLLabs](https://www.ssllabs.com/) to validate the TLS status of your endpoints
0 commit comments