标题:
asp.net2.0如何加密数据库联接字符串
[打印本页]
作者:
lilcy88
时间:
2008-5-28 10:41
标题:
asp.net2.0如何加密数据库联接字符串
asp.net2.0如何加密数据库联接字符串
, |% R: f' {3 u, B. _# `
在asp.net2.0中,发布网站时,加密web.config,这样可以有效保证数据库用户和密码安全,其步骤如下:
! n3 U T# Q# g) K9 k
1.添加密钥
! `3 q9 @/ A! S' R& ?
执行:c:\windows\microsoft.net\framework\v2.0.50727\aspnet_regiis -pc "hnlaw" -exp
( ?1 f- O1 L7 n" L8 U
其中"hnlaw"为密钥名称
. L# \& {) B' j! {" Z+ v, |
2.添加web.config节点
" L0 c! `6 p j, b
在web.config的<configuration></configuration>之间添加:
/ l. M8 ^& ^: { ]( L% {0 X5 ~
<configprotecteddata>
2 F- o7 M# j# G* V( Q7 F
<providers>
9 X) S1 W2 W. I
<add keycontainername="hnlaw" usemachinecontainer="true" description="uses rsacryptoserviceprovider to encrypt and
& m8 @0 U7 e2 T" `: Z
decrypt" name="hnlaw" type="system.configuration.rsaprotectedconfigurationprovider,system.configuration, version=2.0.0.0,
& @% I% f U/ w! E) Q
culture=neutral, publickeytoken=b03f5f7f11d50a3a" />
7 E- ]2 }' a# v4 Z
</providers>
n3 P. N0 g" }( F0 [5 ^* Y1 N; }& ?
</configprotecteddata>
" b& i* \, h) [- Q4 |$ S& g
注意:这里keycontainername="hnlaw"和name="hnlaw"分别表示你的密钥名称;
; u% `& c5 L. M
3.加密web.config
$ t3 x- s& k$ s
到网站根目录添加一个批处理文件enweb.bat,内容如下:
4 ]* d6 i0 ^% v2 x& N
@echo off
: W4 |1 ?2 W. z; c
c:\windows\microsoft.net\framework\v2.0.50727\aspnet_regiis -pef "system.web/identity" "e:\hs studio\donet2\hnlawyer" -prov
6 j2 |* Z: [) R$ c) ~
"hnlaw"
+ u' H. A& l! Q3 |- A5 U
c:\windows\microsoft.net\framework\v2.0.50727\aspnet_regiis -pef "connectionstrings" "e:\hs studio\donet2\hnlawyer" -prov
2 Z r; ^/ [; n& s
"hnlaw"
* K% L; F3 ^7 B7 y; O
pause
3 x8 ], |2 e1 y3 R. {0 z7 \
注册上面的的路径和名称!
$ m. E* o2 f. X/ ?" _! @1 C2 m
运行后出现成功!
% `/ y) I4 J) b8 u
4.解密
% Q/ c0 R) N: _
同样到网站根目录添加一个批处理文件deweb.bat,内容如下:
, f v1 X. G$ n \, S* a
@echo off
) ^% P0 ^/ u- O! G7 a4 `
c:\windows\microsoft.net\framework\v2.0.50727\aspnet_regiis -pef "system.web/identity" "e:\hs studio\donet2\hnlawyer"
+ O% }5 h+ |. }$ m
c:\windows\microsoft.net\framework\v2.0.50727\aspnet_regiis -pdf "connectionstrings" "e:\hs studio\donet2\hnlawyer"
) K! L/ ~% ~! C
pause
* G, ~/ p5 X# C* I2 ^$ z$ g9 ^. A( X
最后就是要注意:做完后找到c:\documents and settings\all users\application data\microsoft\crypto\rsa\machinekeys目录下,找到生成
4 F T" z3 Z2 H; w# ]2 R7 Y8 a% ]
的密钥文件(可按时间查找),给上network service可读取权限,不然会出现error message from the provider: the rsa key container could
( H* k" |* D. ?: S& u* ?
not be opened.无法读取
2 ]* Q( J8 b) S F# m
' _6 c. W" t( k6 T- c s
这样可能会出现,如果没有自己的服务器,没有权限修改machinekeys目录顺便向你推荐一款高速稳定的时代互联智强商务C型 +.CN域名,原价1952元/年,现
! d% M; L3 {# v0 p4 Q2 d! r" c
价只需1588元/年,还免费送域名,CDN网站加速器 送繁简通网络简装版 ,联付宝网上支付,我觉得特值,特向大家推荐!有兴趣的朋友可
8 B$ T2 J+ A6 S; J! f9 ]
到
http://www.now.cn/vhost
申请试试! 电话:0756-2623871 QQ: 168075865 MSN:
north888@now.net.cn
1 ]/ D- Y5 P- t/ h% h! Q3 ]
全球免费咨询电话
http://www.now.cn/callcenter/call.net?LineName=55
欢迎光临 捌玖网络工作室 (http://www.89w.org/)
Powered by Discuz! 7.2