|

- UID
- 455
- 帖子
- 3
- 精华
- 0
- 积分
- 8
- 金币
- 3
- 威望
- 0
- 贡献
- 0
|
asp.net2.0如何加密数据库联接字符串
$ M* W" u. e: | }+ g b在asp.net2.0中,发布网站时,加密web.config,这样可以有效保证数据库用户和密码安全,其步骤如下:
6 g8 x8 n s S* U8 p d1.添加密钥
! R9 U8 K: B3 A0 f$ v9 C$ j9 Z9 R执行:c:\windows\microsoft.net\framework\v2.0.50727\aspnet_regiis -pc "hnlaw" -exp
) @0 S- Y! O& M+ @6 l5 G. y! ^其中"hnlaw"为密钥名称
% l/ n1 y5 X( v/ k3 f9 x* X' v2.添加web.config节点
9 X* z2 D$ r# E! A& k* L在web.config的<configuration></configuration>之间添加:
! ]* ]0 ^3 u5 O4 C' F* e. g7 ^$ B& R<configprotecteddata>0 z6 W4 T: S* p8 H: R; o8 N6 S
<providers># B0 L: L3 w8 ^* g8 u% Q# t
<add keycontainername="hnlaw" usemachinecontainer="true" description="uses rsacryptoserviceprovider to encrypt and : `6 @% v! c# G. N
decrypt" name="hnlaw" type="system.configuration.rsaprotectedconfigurationprovider,system.configuration, version=2.0.0.0, * ]; a# }9 V, ]
culture=neutral, publickeytoken=b03f5f7f11d50a3a" />8 j/ d( N1 s% a; [3 \6 l
</providers> }3 O4 d) J/ z* P! Z" f
</configprotecteddata>4 L, Q" z- r; E E, y3 t
注意:这里keycontainername="hnlaw"和name="hnlaw"分别表示你的密钥名称;" T; o- w7 U7 R3 ~$ q4 E X0 z w
3.加密web.config
: V. C1 @0 `8 d8 |$ g0 l& i+ d5 p7 u到网站根目录添加一个批处理文件enweb.bat,内容如下:
' |1 X: D7 O' X# y- U/ e( R! z0 R- f@echo off: i- E- j9 I- j& B
c:\windows\microsoft.net\framework\v2.0.50727\aspnet_regiis -pef "system.web/identity" "e:\hs studio\donet2\hnlawyer" -prov
3 t" w4 _# Y+ I1 |& W"hnlaw" g1 O, z# _" [8 Z1 }- M) x+ G
c:\windows\microsoft.net\framework\v2.0.50727\aspnet_regiis -pef "connectionstrings" "e:\hs studio\donet2\hnlawyer" -prov
- x s4 I& f* Y2 v, A8 b" q"hnlaw". R3 J, X- \* {( m8 o: C/ \
pause
( V- q1 x) N7 X! {! h/ Q注册上面的的路径和名称!
+ T) N) k# K3 s9 J/ D4 E5 f运行后出现成功!* e9 q, j( [6 b8 N- k0 {
4.解密7 A8 {, s% Q% }
同样到网站根目录添加一个批处理文件deweb.bat,内容如下:
5 ]4 k* Q" g8 L@echo off9 k1 o/ h4 u4 v
c:\windows\microsoft.net\framework\v2.0.50727\aspnet_regiis -pef "system.web/identity" "e:\hs studio\donet2\hnlawyer"
, n3 _- p2 }" R6 E! d& Pc:\windows\microsoft.net\framework\v2.0.50727\aspnet_regiis -pdf "connectionstrings" "e:\hs studio\donet2\hnlawyer"
L/ g' D6 q) p" jpause
+ m& P$ H6 s/ v o) x$ j2 L最后就是要注意:做完后找到c:\documents and settings\all users\application data\microsoft\crypto\rsa\machinekeys目录下,找到生成+ A: G7 B4 d( T; r7 Z
的密钥文件(可按时间查找),给上network service可读取权限,不然会出现error message from the provider: the rsa key container could 0 T8 C; |: m. ]1 m5 G
not be opened.无法读取0 B. R# y2 T b) {3 a6 i. m' y
0 ^* W* D( N0 p+ E; B/ b: C7 b
这样可能会出现,如果没有自己的服务器,没有权限修改machinekeys目录顺便向你推荐一款高速稳定的时代互联智强商务C型 +.CN域名,原价1952元/年,现
- s% s& K- r, ~ G1 ?, s; x7 m) _价只需1588元/年,还免费送域名,CDN网站加速器 送繁简通网络简装版 ,联付宝网上支付,我觉得特值,特向大家推荐!有兴趣的朋友可
, L6 P& i% a R3 @8 a1 |到http://www.now.cn/vhost申请试试! 电话:0756-2623871 QQ: 168075865 MSN:north888@now.net.cn
0 W( _% P" t8 d全球免费咨询电话 http://www.now.cn/callcenter/call.net?LineName=55 |
|