XIAO牛
----在雨中长大
1、打开记事本,然后将下面的代码复制到一个新文件中。
<%@ Page Language="C#" %><%response.write(system.security.principal.windowsidentity.getcurrent().name);%>
1 <%@ Page Language="C#" %>
2 <%Response.Write(System.Security.Principal.WindowsIdentity.GetCurrent().Name);%>
    保存 my.aspx 到你的web目录 ,运行一下窗体显示 “ NT AUTHORITY\NETWORK SERVICE ”。成功!

2、(关键一步)运行cmd, 执行以下
 aspnet_regiis -pa "NetFrameworkConfigurationKey" "NT AUTHORITY\NETWORK SERVICE"
说明:注册默认的 RsaProtectedConfigurationProvider 的RSA 密钥容器,
NetFrameworkConfigurationKey 是 RsaProtectedConfigurationProvider 的默认provider。 成功!

3、现在,可以加密web.config ,运行:
加密:aspnet_regiis -pe "connectionStrings" -app "/Myweb" 
    说明:"connectionStrings" 是要加密的节,"/Myweb"是的web目录
解密:aspnet_regiis -pd "connectionStrings" -app "/Myweb" 
    成功!

4、这样就可以在程序里调用了(不用解密, 哈哈):
...
string connstr= ConfigurationManager.ConnectionStrings["myConnstr"].ConnectionString.ToString();
...

 同样的,也可以用创建自己的RSA 密钥容器,如下:
(1)、创建 "MyKeys" 密钥容器,运行:aspnet_regiis -pc "MyKeys" -exp
(2)、在web.config里加入以下:
1 <protectedData>
2         <providers>         
3                 <add name="MyProvider" type="System.Configuration.RsaProtectedConfigurationProvider, System.Configuration, Version
                    =2.0. 0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d0a3a, processorArchitecture=MSIL"
 keyContainerName="MyKeys"  
                        useMachineContainer
="true" /> 
4        </providers>     
5 </protectedData>
保存。
(3)、授予帐户对计算机级别的 "MyKeys" RSA 密钥容器的访问权限,
运行: aspnet_regiis -pa "MyKeys" "NT AUTHORITY\NETWORK SERVICE"
(4)、现在,可以加密web.config ,
运行: 加密:aspnet_regiis -pe "connectionStrings" -app "/Myweb" -prov "MyProvider"
说明:"connectionStrings" 是要加密的节,"/Myweb"是的web目录,"MyProvider" 自己密钥容器
解密:aspnet_regiis -pd "connectionStrings" -app "/Myweb" -prov "MyProvider"
posted on 2006-04-14 12:47  XIAO牛  阅读(147)  评论(0)    收藏  举报