diff --git a/Src/ElasticScale.Client/ShardManagement/ShardMap/ShardMapUtils.cs b/Src/ElasticScale.Client/ShardManagement/ShardMap/ShardMapUtils.cs index 4066fe8..0fca5ad 100644 --- a/Src/ElasticScale.Client/ShardManagement/ShardMap/ShardMapUtils.cs +++ b/Src/ElasticScale.Client/ShardManagement/ShardMap/ShardMapUtils.cs @@ -16,7 +16,7 @@ internal static class ShardMapUtils { /// /// SqlConnectionStringBuilder property that allows one - /// to specify the number of reconnect attempts on connection failure + /// to specify the number of reconnect attempts on connection failure /// internal static readonly string ConnectRetryCount = "ConnectRetryCount"; @@ -28,11 +28,18 @@ internal static class ShardMapUtils /// /// String representation of SqlAuthenticationMethod.ActiveDirectoryIntegrated - /// SqlAuthenticationMethod.ActiveDirectoryIntegrated.ToString() cannot be used + /// SqlAuthenticationMethod.ActiveDirectoryIntegrated.ToString() cannot be used /// because it may not be available in the .NET framework version that we are running in /// internal static readonly string ActiveDirectoryIntegratedStr = "ActiveDirectoryIntegrated"; + /// + /// String representation of SqlAuthenticationMethod.ActiveDirectoryInteractive + /// SqlAuthenticationMethod.ActiveDirectoryInteractive.ToString() cannot be used + /// because it may not be available in the .NET framework version that we are running in + /// + internal static readonly string ActiveDirectoryInteractiveStr = "ActiveDirectoryInteractive"; + [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1810:InitializeReferenceTypeStaticFieldsInline")] static ShardMapUtils() { diff --git a/Src/ElasticScale.Client/ShardManagement/SqlStore/SqlShardMapManagerCredentials.cs b/Src/ElasticScale.Client/ShardManagement/SqlStore/SqlShardMapManagerCredentials.cs index d5eea78..164dd7d 100644 --- a/Src/ElasticScale.Client/ShardManagement/SqlStore/SqlShardMapManagerCredentials.cs +++ b/Src/ElasticScale.Client/ShardManagement/SqlStore/SqlShardMapManagerCredentials.cs @@ -153,10 +153,14 @@ internal static void EnsureCredentials( } // Check for active directory integrated authentication (if supported) - if (connectionString.ContainsKey(ShardMapUtils.Authentication) && - connectionString[ShardMapUtils.Authentication].ToString().Equals(ShardMapUtils.ActiveDirectoryIntegratedStr)) + if (connectionString.ContainsKey(ShardMapUtils.Authentication)) { - return; + string authentication = connectionString[ShardMapUtils.Authentication].ToString(); + if (authentication.Equals(ShardMapUtils.ActiveDirectoryIntegratedStr, StringComparison.OrdinalIgnoreCase) + || authentication.Equals(ShardMapUtils.ActiveDirectoryInteractiveStr, StringComparison.OrdinalIgnoreCase)) + { + return; + } } // If secure credential not specified, verify that user/pwd are in the connection string. If secure credential