private string DecryptConnectionStringPassword(string connectionString) { // if we're not securing connection strings, just return the original if (!secureConnectionStrings) { return(connectionString); } SqlConnectionStringBuilder b = new SqlConnectionStringBuilder(connectionString); //AM: added this to deal with connection strings using integrated security if (String.IsNullOrEmpty(b.Password)) { return(connectionString); } byte[] cipherText = Convert.FromBase64String(b.Password); b.Password = KeyUtil.Decrypt(cipherText); return(b.ConnectionString); /* return Regex.Replace(connectionString, @"password=[^;\s]*", * String.Format("password={0}", (string.IsNullOrEmpty(_key)? KeyUtil.ToPlainText(cipherText) : * KeyUtil.ToPlainText(cipherText, _key, _initializationVector)))); * * * return connectionString;*/ }
public static string ToPlainText(byte[] data) { if (KeyUtil == null) { throw new CryptographicException("No IEncryptionManager was provided"); } return(KeyUtil.Decrypt(data)); }