Skip to content

Commit e126d18

Browse files
committed
CSHARP-1744: changing ssl protocol defaults to only support tls.
1 parent 25d1ee8 commit e126d18

File tree

4 files changed

+6
-36
lines changed

4 files changed

+6
-36
lines changed

src/MongoDB.Driver.Core/Core/Configuration/SslStreamSettings.cs

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -53,13 +53,7 @@ public SslStreamSettings(
5353
_checkCertificateRevocation = checkCertificateRevocation.WithDefault(true);
5454
_clientCertificates = Ensure.IsNotNull(clientCertificates.WithDefault(Enumerable.Empty<X509Certificate>()), "clientCertificates").ToList();
5555
_clientCertificateSelectionCallback = clientCertificateSelectionCallback.WithDefault(null);
56-
#if NETSTANDARD1_6
57-
#pragma warning disable 618
58-
_enabledSslProtocols = enabledProtocols.WithDefault(SslProtocols.Tls | SslProtocols.Ssl3);
59-
#pragma warning restore
60-
#else
61-
_enabledSslProtocols = enabledProtocols.WithDefault(SslProtocols.Default);
62-
#endif
56+
_enabledSslProtocols = enabledProtocols.WithDefault(SslProtocols.Tls12 | SslProtocols.Tls11 | SslProtocols.Tls);
6357
_serverCertificateValidationCallback = serverCertificateValidationCallback.WithDefault(null);
6458
}
6559

src/MongoDB.Driver/SslSettings.cs

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -37,13 +37,7 @@ public class SslSettings : IEquatable<SslSettings>
3737
private bool _checkCertificateRevocation = true;
3838
private X509CertificateCollection _clientCertificateCollection;
3939
private LocalCertificateSelectionCallback _clientCertificateSelectionCallback;
40-
#if NETSTANDARD1_6
41-
#pragma warning disable 618
42-
private SslProtocols _enabledSslProtocols = SslProtocols.Tls | SslProtocols.Ssl3;
43-
#pragma warning restore
44-
#else
45-
private SslProtocols _enabledSslProtocols = SslProtocols.Default;
46-
#endif
40+
private SslProtocols _enabledSslProtocols = SslProtocols.Tls12 | SslProtocols.Tls11 | SslProtocols.Tls;
4741
private RemoteCertificateValidationCallback _serverCertificateValidationCallback;
4842

4943
// the following fields are set when the SslSettings are frozen
@@ -253,7 +247,7 @@ public override string ToString()
253247
{
254248
parts.Add(string.Format("ServerCertificateValidationCallback={0}", _serverCertificateValidationCallback.GetMethodInfo().Name));
255249
}
256-
250+
257251
return string.Format("{{{0}}}", string.Join(",", parts.ToArray()));
258252
}
259253

tests/MongoDB.Driver.Core.Tests/Core/Configuration/SslStreamSettingsTests.cs

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -34,13 +34,7 @@ public void constructor_should_initialize_instance()
3434
subject.CheckCertificateRevocation.Should().BeTrue();
3535
subject.ClientCertificates.Should().BeEmpty();
3636
subject.ClientCertificateSelectionCallback.Should().BeNull();
37-
#if NETSTANDARD1_6
38-
#pragma warning disable 618
39-
subject.EnabledSslProtocols.Should().Be(SslProtocols.Tls | SslProtocols.Ssl3);
40-
#pragma warning restore
41-
#else
42-
subject.EnabledSslProtocols.Should().Be(SslProtocols.Default);
43-
#endif
37+
subject.EnabledSslProtocols.Should().Be(SslProtocols.Tls12 | SslProtocols.Tls11 | SslProtocols.Tls);
4438
subject.ServerCertificateValidationCallback.Should().BeNull();
4539
}
4640

tests/MongoDB.Driver.Tests/SslSettingsTests.cs

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -118,13 +118,7 @@ public void TestDefaults()
118118
Assert.Equal(true, settings.CheckCertificateRevocation);
119119
Assert.Equal(null, settings.ClientCertificates);
120120
Assert.Equal(null, settings.ClientCertificateSelectionCallback);
121-
#if NETSTANDARD1_6
122-
#pragma warning disable 618
123-
Assert.Equal(SslProtocols.Tls | SslProtocols.Ssl3, settings.EnabledSslProtocols);
124-
#pragma warning restore
125-
#else
126-
Assert.Equal(SslProtocols.Default, settings.EnabledSslProtocols);
127-
#endif
121+
Assert.Equal(SslProtocols.Tls12 | SslProtocols.Tls11 | SslProtocols.Tls, settings.EnabledSslProtocols);
128122
Assert.Equal(null, settings.ServerCertificateValidationCallback);
129123
}
130124

@@ -161,13 +155,7 @@ public void TestEquals()
161155
public void TestEnabledSslProtocols()
162156
{
163157
var settings = new SslSettings();
164-
#if NETSTANDARD1_6
165-
#pragma warning disable 618
166-
Assert.Equal(SslProtocols.Tls | SslProtocols.Ssl3, settings.EnabledSslProtocols);
167-
#pragma warning restore
168-
#else
169-
Assert.Equal(SslProtocols.Default, settings.EnabledSslProtocols);
170-
#endif
158+
Assert.Equal(SslProtocols.Tls12 | SslProtocols.Tls11 | SslProtocols.Tls, settings.EnabledSslProtocols);
171159

172160
var enabledSslProtocols = SslProtocols.Tls;
173161
settings.EnabledSslProtocols = enabledSslProtocols;

0 commit comments

Comments
 (0)