zoukankan      html  css  js  c++  java
  • 加密 web.config

    1、打开记事本,然后将下面的代码复制到一个新文件中。
    <%@ Page Language="C#" %>
    <%
    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里加入以下:
    <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 密钥容器的访问权限,运行:

    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"

  • 相关阅读:
    3.24课堂
    3.23作业
    3.23课堂
    3.20作业
    3.20课堂
    3.19作业
    3.19课堂
    3.18课堂
    3.18作业
    46、表与表的连接
  • 原文地址:https://www.cnblogs.com/winner/p/875467.html
Copyright © 2011-2022 走看看