如何给web.config里的数据库链接加密??

lxy_lxy 2009-09-16 02:47:15
如何给web.config里的数据库链接加密??谢谢
...全文
505 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
HooverHuang 2009-09-17
  • 打赏
  • 举报
回复
连接字符串写在配置文件里面就是为了方便修改,你加密后就不能很方便的去修改了
可能还需要去考虑解密或者键值对应关系,这样也就失去了配置文件的作用了。
但是考虑到安全性的问题,似乎加密是有必要的。这两者似乎有点矛盾了。。。。。。。。。
谁能解惑
yang_kun 2009-09-17
  • 打赏
  • 举报
回复
帮顶............
战斗生活 2009-09-16
  • 打赏
  • 举报
回复
百度 Google肯定有的吧
imfor 2009-09-16
  • 打赏
  • 举报
回复
参考http://www.cnblogs.com/nina-piaoye/archive/2006/08/30/490031.html

<add key="conn" value="71ALSElZg9+3Q+Wii/x/2oBZgZ8V9pWqYBbIsLxY1VFcc0UUAhjM4KyYu1jtOfAF"/>

public static Common.EncryptionUtil Edat = new Common.EncryptionUtil();
public static readonly string connectionString =Edat.DecryptData(Edat.key,ConfigurationSettings.AppSettings["conn"].ToString());
咋样!
jhdxhj 2009-09-16
  • 打赏
  • 举报
回复
不错的想法
lxy_lxy 2009-09-16
  • 打赏
  • 举报
回复
怎么办,网上的方法都是一个接一个的转贴,答案都是一样的,我试了也不好使啊,怎么办啊····
lxy_lxy 2009-09-16
  • 打赏
  • 举报
回复
加密:

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -pef "connectionStrings" "E:\加密文件\Min"

解密:

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -pdf "connectionStrings" "E:\加密文件\Min"


我是这么做的,我用的是windows server 2003系统,
但是加密后我在vs2005中运行浏览是没有问题的,但是我放在IIS中就会发生下面的错误:

“/”应用程序中的服务器错误。
--------------------------------------------------------------------------------

配置错误
说明: 在处理向该请求提供服务所需的配置文件时出错。请检查下面的特定错误详细信息并适当地修改配置文件。

分析器错误信息: 未能使用提供程序“RsaProtectedConfigurationProvider”进行解密。提供程序返回错误信息为: 打不开 RSA 密钥容器。

源错误:


行 41:
行 42: <connectionStrings configProtectionProvider="RsaProtectedConfigurationProvider">
行 43: <EncryptedData Type="http://www.w3.org/2001/04/xmlenc#Element"行 44: xmlns="http://www.w3.org/2001/04/xmlenc#">
行 45: <EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#tripledes-cbc" />


源文件: E:\加密文件\Min\web.config 行: 43


--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:2.0.50727.3082; ASP.NET 版本:2.0.50727.3082
chen_ya_ping 2009-09-16
  • 打赏
  • 举报
回复
关于web.config中连接字符串的加密或解密:
加密:

@echo off
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -pef "connectionStrings" "E:\ALL TOOLS INSTALLED\.NET Pet Shop 4.0\Web"
PAUSE
把E:\ALL TOOLS INSTALLED\.NET Pet Shop 4.0\Web改为你自己的web项目
解密:
@echo off
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -pdf "connectionStrings" "E:\ALL TOOLS INSTALLED\.NET Pet Shop 4.0\Web"
PAUSE
把E:\ALL TOOLS INSTALLED\.NET Pet Shop 4.0\Web改为你自己的web项目

上面的加密和解密各建一个.bat文件点击运行
westhdd 2009-09-16
  • 打赏
  • 举报
回复
其实可以将web.config加密,光连接字符串加密没用过
imfor 2009-09-16
  • 打赏
  • 举报
回复
可以自己写一个加密算法啊 例如把:
server=.;database=db;uid=sa;pwd= 加密 成 xxxxxxxxxxx
用的时候 解密一下
<appSettings>
<add key="conn" value="xxxxxxxx"/>
</appSettings>


SqlConnection conn=new SqlConnection(解密(ConfigurationManager.AppSettings["conn"]));

这是本人思路,参考.
爪哇鹅 2009-09-16
  • 打赏
  • 举报
回复
通过aspnet_regiis.exe工具来加密:
aspnet_regiis -pe "connectionStrings" -app "/项目名称" -prov "RSAProtectedConfigurationProvider"

解密:
aspnet_regiis -pd "connectionStrings" -app "/项目名称"

-pe指的是加密web.config程序段;
-app指的是web应用程序的虚拟目录;
-prov 指的是选择哪种加密方式的Provider;
-pd指的是解密web.config程序段。
honghu3000 2009-09-16
  • 打赏
  • 举报
回复
aspnet_regiis -pe "connectionStrings" -app "/xx" (xx为应用程序名)

解密:aspnet_regiis -pd "connectionStrings" -app "/xx"
Andy__Huang 2009-09-16
  • 打赏
  • 举报
回复
链接加密码没听说过,但我想数据库链接是由服务器IP、数据库名、用户名、密码组成的,
你可以把它分离为键值,分别是:服务器IP、数据库名、用户名、密码

只要密码你经过转换加密码就好,密码转换算法是在程序里面做的;在web.config里面的密码是不能直接访问,要经过转换才能访问

zhulong1111 2009-09-16
  • 打赏
  • 举报
回复
配置离得只是个字符串 随便怎么加密 你在调用的时候解密下就OK MD5
lnwuyaowei 2009-09-16
  • 打赏
  • 举报
回复
http://blog.csdn.net/cheng_feng001/archive/2007/11/29/1906842.aspx
http://www.cnblogs.com/azhai/archive/2006/01/04/310761.html
wjxluck 2009-09-16
  • 打赏
  • 举报
回复
还没听说过。。 顶顶算liao

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧