使用前解密 AES connectionString.config 数据

本文关键字:connectionString config 数据 AES 解密 | 更新日期: 2023-09-27 18:32:46

我将连接字符串、用户名、密码存储在 connectionString.config 文件中。有没有办法解密所有这些值,然后在值未加密的情况下像往常一样连接?

欢迎所有建议,因为我不确定从这里开始,因为我没有发现Microsoft文档非常有用。

connectionString.config

<connectionStrings>
  <add name="as400"
       connectionString="DataSource=AgIrRzkARUJsQBUYXKCPpH8MdqtQ5Sd+lt4kyBEZBY=; userid=tRGgY7PERBTg2WPPzVerIlMP93kmQbTSuKsJKyDHFU=; password=kMxEGU75lJ1VD5OaaujnLzleR/7ZQDco3kddfwTOvI=;"/>
</connectionStrings>

应用配置

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
  </startup>
  <appSettings file="AppSettings.config"/>
  <connectionStrings configSource="connectionStrings.config"/>
</configuration>

应用程序代码

//Open connection to the iSeries
            iDB2Connection cn = new iDB2Connection();
            cn.ConnectionString = ConfigurationManager.ConnectionStrings[database].ConnectionString;

使用前解密 AES connectionString.config 数据

为了建立SQL连接,你需要首先解密连接字符串,下面的代码将引导你朝着正确的方向前进。

DataSet dsConnection = new DataSet();
dsConnection.ReadXml(System.Web.Hosting.HostingEnvironment.MapPath("~/ConnectionString.Config.xml"));
String connection = dsConnection.Tables[0].Rows[0]["connectionstring"].ToString();
SqlConnectionStringBuilder DBConfig = new SqlConnectionStringBuilder(connection); 
string ConnectionString = "Data Source=" + Decrypt(DBConfig.DataSource) + ";Initial Catalog=" + Decrypt(DBConfig.InitialCatalog) + ";User ID=" + Decrypt(DBConfig.UserID) + ";Password=" + Decrypt(DBConfig.Password);
iDB2Connection cn = new iDB2Connection();
cn.ConnectionString = ConnectionString;

首先,您需要为AES加密创建解密函数,然后可以像上面的代码一样调用该函数。

谢谢
塞尔瓦库马尔·

相关文章:
  • 没有找到相关文章