加密web.config的方法分享

网络编程 2021-07-04 22:40www.168986.cn编程入门
加密web.config的方法分享,需要的朋友可以参考一下

1、打开记事本,然后将狼蚁网站SEO优化的代码复制到一个新文件中。

代码如下:

<%@ Page Language="C#" %>
<%
Response.Write(System.Security.Principal.WindowsIdentity.GetCurrent().Name);
%>

 保存 my.aspx 到你的web目录 ,运行一下窗体显示 “ NT AUTHORITY\NETWORK SERVICE ”。成功!

2、(关键一步)运行cmd,执行以下

   asp_regiis -pa "NetFrameworkConfigurationKey" "NT AUTHORITY\NETWORK SERVICE"

   说明注册默认的 RsaProtectedConfigurationProvider 的RSA 密钥容器,
    NetFrameworkConfigurationKey 是 RsaProtectedConfigurationProvider 的默认provider。 成功!

3、现在,可以加密web.config ,运行

   加密asp_regiis -pe "connectionStrings" -app "/Myweb" 
       说明"connectionStrings" 是要加密的节,"/Myweb"是的web目录      
   解密asp_regiis -pd "connectionStrings" -app "/Myweb" 

   成功!    

4、这样就可以在程序里调用了(不用解密, 哈哈


    ...
    string connstr= ConfigurationManager.ConnectionStrings["myConnstr"].ConnectionString.ToString();
    ...


 同样的,也可以用创建自己的RSA 密钥容器,如下

  (1)、创建 "MyKeys" 密钥容器,运行asp_regiis -pc "MyKeys" -exp
 (2)、在web.config里加入以下
 

代码如下:

      <protectedData>
        <providers>
         <add name="MyProvider"
              type="System.Configuration.RsaProtectedConfigurationProvider, System.Configuration, Version=2.0. 0.0,
                    Culture=neutral, PublicKeyToken=b03f5f7f11d0a3a,
                    processorArchitecture=MSIL"
              keyContainerName="MyKeys"
              useMachineContainer="true" />
        </providers>
      </protectedData>
    

        保存。

 (3)、授予帐户对计算机级别的 "MyKeys" RSA 密钥容器的访问权限,运行

       asp_regiis -pa "MyKeys" "NT AUTHORITY\NETWORK SERVICE"

  (4)、现在,可以加密web.config ,运行

     加密asp_regiis -pe "connectionStrings" -app "/Myweb"-prov "MyProvider" 

             说明"connectionStrings" 是要加密的节,"/Myweb"是的web目录,"MyProvider" 自己密钥容器

        解密asp_regiis -pd "connectionStrings" -app "/Myweb"-prov "MyProvider"

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by