@@ -778,16 +778,17 @@ private void Parse()
778
778
var invalidPercentPattern = @"%$|%.$|%[^0-9a-fA-F]|%[0-9a-fA-F][^0-9a-fA-F]" ;
779
779
if ( Regex . IsMatch ( _originalConnectionString , invalidPercentPattern ) )
780
780
{
781
- var message = string . Format ( "The connection string '{0}' contains an invalid '%' escape sequence." ,
782
- _originalConnectionString ) ;
781
+ var protectedConnectionString = protectConnectionString ( _originalConnectionString ) ;
782
+ var message = $ "The connection string ' { protectedConnectionString } ' contains an invalid '%' escape sequence." ;
783
783
throw new MongoConfigurationException ( message ) ;
784
784
}
785
785
}
786
786
787
787
var match = Regex . Match ( _originalConnectionString , pattern ) ;
788
788
if ( ! match . Success )
789
789
{
790
- var message = string . Format ( "The connection string '{0}' is not valid." , _originalConnectionString ) ;
790
+ var protectedConnectionString = protectConnectionString ( _originalConnectionString ) ;
791
+ var message = $ "The connection string '{ protectedConnectionString } ' is not valid.";
791
792
throw new MongoConfigurationException ( message ) ;
792
793
}
793
794
@@ -801,6 +802,12 @@ private void Parse()
801
802
{
802
803
throw new MongoConfigurationException ( "This is an invalid w and journal pair." ) ;
803
804
}
805
+
806
+ string protectConnectionString ( string connectionString )
807
+ {
808
+ var protectedString = Regex . Replace ( connectionString , @"(?<=://)[^/]*(?=@)" , "<hidden>" ) ;
809
+ return protectedString ;
810
+ }
804
811
}
805
812
806
813
private void ParseOption ( string name , string value )
0 commit comments