Skip to content

Commit 9ac07a0

Browse files
CSHARP-3066: Improve MongoX509Credential API
1 parent bcdc989 commit 9ac07a0

File tree

3 files changed

+10
-6
lines changed

3 files changed

+10
-6
lines changed

src/MongoDB.Driver/MongoCredential.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -284,7 +284,7 @@ public static MongoCredential CreateMongoCRCredential(string databaseName, strin
284284
/// </summary>
285285
/// <param name="username">The username.</param>
286286
/// <returns>A credential for MONGODB-X509.</returns>
287-
public static MongoCredential CreateMongoX509Credential(string username)
287+
public static MongoCredential CreateMongoX509Credential(string username = null)
288288
{
289289
return FromComponents(
290290
mechanism: "MONGODB-X509",

tests/MongoDB.Driver.Tests/AuthenticationTests.cs

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -341,10 +341,14 @@ public void Authentication_succeeds_with_MONGODB_X509_mechanism(
341341

342342
var settings = DriverTestConfiguration.GetClientSettings().Clone();
343343
var serverVersion = CoreTestConfiguration.ServerVersion;
344-
var serverExtractsUsernameFromCertificate =
345-
serverVersion >= Feature.ServerExtractsUsernameFromX509Certificate.FirstSupportedVersion;
346-
settings.Credential = MongoCredential.CreateMongoX509Credential(
347-
username: serverExtractsUsernameFromCertificate ? null : userName);
344+
if (Feature.ServerExtractsUsernameFromX509Certificate.IsSupported(serverVersion))
345+
{
346+
settings.Credential = MongoCredential.CreateMongoX509Credential();
347+
}
348+
else
349+
{
350+
settings.Credential = MongoCredential.CreateMongoX509Credential(userName);
351+
}
348352
settings.SslSettings = settings.SslSettings.Clone();
349353
settings.SslSettings.ClientCertificates = new[] { clientCertificate };
350354

tests/MongoDB.Driver.Tests/MongoCredentialTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ public void TestCreateMongoX509Credential()
4444
[Fact]
4545
public void TestCreateMongoX509Credential_without_username()
4646
{
47-
var credential = MongoCredential.CreateMongoX509Credential(null);
47+
var credential = MongoCredential.CreateMongoX509Credential();
4848
Assert.Equal("MONGODB-X509", credential.Mechanism);
4949
Assert.Equal(null, credential.Username);
5050
Assert.IsType<ExternalEvidence>(credential.Evidence);

0 commit comments

Comments
 (0)