Castle ActiveRecord配置文件中连接字符串解密_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > Castle ActiveRecord配置文件中连接字符串解密

Castle ActiveRecord配置文件中连接字符串解密

 2013/8/12 11:20:20  月影银沙  博客园  我要评论(0)
  • 摘要:使用CastleActiveRecord通常都是使用配置文件进行数据库连接配置。然后采用如下方式初始化:IConfigurationSourcesource=ConfigurationManager.GetSection("activerecord")asIConfigurationSource;ActiveRecordStarter.Initialize(Assembly.Load("ORM.Model"),source);但是如果采用加密的数据库连接字符串如何进行解密呢
  • 标签:配置文件 文件 配置 连接 字符串

使用Castle ActiveRecord通常都是使用配置文件进行数据库连接配置。然后采用如下方式初始化:

IConfigurationSource source = ConfigurationManager.GetSection("activerecord") as IConfigurationSource;
ActiveRecordStarter.Initialize(Assembly.Load("ORM.Model"), source);

但是如果采用加密的数据库连接字符串如何进行解密呢?
通过反编译可发现source的children继承了MutableConfiguration类,MutableConfiguration的Value并非是只读属性,因此可以通过如下方法进行实现加密连接字符串的解密。

 

IEncryption encrytion = new RSAEncryption();
IConfigurationSource source = ConfigurationManager.GetSection("activerecord") as IConfigurationSource;
MutableConfiguration connectionValue = source.GetConfiguration(typeof(ActiveRecordBase)).Children["connection.connection_string"] as MutableConfiguration;
connectionValue.Value = encrytion.Decrypt(connectionValue.Value);
ActiveRecordStarter.Initialize(Assembly.Load("ORM.Model"), source);

经过测试,字符串已解密成正常的连接字符串。

 

 

发表评论
用户名: 匿名