zoukankan      html  css  js  c++  java
  • NBearV3教程——实体配置文件加密篇

    版本

    1.0 [2006-11-18]

    简介

    本教程介绍NBearV3中的实体配置文件的加密支持。

    目标

    通过本教程,读者应能够全面掌握加密实体配置文件和如何结合使用ASP.NET的配置节加密功能,实现部署环境关联的实体配置加密。

    代码

    本教程不包含任何演示代码。

    时间

    <10分钟。

    正文

    1 配置及启用实体配置文件加密

    要启用实体配置文件加密,需要如下设置entityConfig配置节:

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
     
    <configSections>
        
    <section name="entityConfig" type="NBear.Common.EntityConfigurationSection, NBear.Common" />
     
    </configSections>
     
    <entityConfig encrpyt="false" key="aslkjkljlsajsuaggasfklrjuisdhaie">
        
    <includes>
          
    <add key="Sample" value="C:\Teddy\NBearV3\src\NBear.Test.CaseTests\EntityConfig.xml" />
        
    </includes>
     
    </entityConfig>
     
    <connectionStrings>
        
    <add name="CaseTests" connectionString="Server=(local);Database=CaseTests;Uid=sa;Pwd=sa" providerName="NBear.Data.SqlServer.SqlDbProvider"/>
     
    </connectionStrings>
    </configuration>

    注意以上代码中,entityConfig配置节加粗的两个属性:encryptkey

    encrypt=true代表,启用实体配置文件加密。

    key则指定了一个用于加密/解密实体配置文件的key

    如果启用了实体配置文件加密功能,则当前应用程序,将只能识别经过加密的实体配置文件。

    2加密/解密实体配置文件

    要加密/解密实体配置文件,需要使用dist目录中的NBear.Tools.ConfigurationEncrypter.exe工具。这是一个Windows Form程序,它的使用非常简单,就是载入一个配置文件,指定加密key,并加密/解密这个配置文件。

    3 使用ASP.NET的配置节加密工具实现部署环境关联的配置节加密

    ASP.NET提供了config文件的加密功能,例如,使用下面的命令行语句可以将IIS中的指定应用程序的Web.configentityConfig配置节加密:

    aspnet_regiis -pe "entityConfig" -app "/应用程序的名字"

    下面的语句则是对应的解密命令:

    aspnet_regiis –pd "entityConfig" -app "/应用程序的名字"

    1:您可以在命令行环境执行aspnet_regiis /help查看aspnet_regiis的更多选项。aspnet_regiis.exe工具一般在[windir]\ Microsoft.NET\Framework\v2.0.50727\目录下。

    2:您可能需要将dist\NBear.Common.dll文件复制到aspnet_regiis.exe所在的目录,否则,加密/解密配置节的过程中可能会报不能加载NBear.Common.dll错误。

    您可能会问,使用如上命令加密Web应用程序的配置文件有什么作用呢?

    一旦使用aspnet_regiis加密配置节,则该配置文件中被加密的配置节的内容会使用加密后的数据代替,这些加密数据,只在执行aspnet_regiis的这台服务器上能够被识别。也就是说,即使完整复制该应用程序到另一台服务器,也不能运行该程序,因为配置文件将不能正确识别。aspnet_regiis同时包含了更多其它加密选项,可以更灵活的控制配置节的加密过程。不过,这就是 ASP.NETSDK文档讨论的范畴了,这里仅仅给出常用的方法,不做更多讨论。

    //正文结束

    //本文结束

  • 相关阅读:
    基线 css
    a与a:link、a:visited、a:hover、a:active
    去除iPhone的默认input样式
    iphone 数字字段颜色兼容问题
    javascript高级程序设计
    a标签 打电话 发邮件
    给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0 ?找出所有满足条件且不重复的三元组。
    先编写函数EncryptChar,按照下述规则将给定的字符c转化(加密)为新的字符
    一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6=1+2+3。编程找出1000以内的所有完数。
    古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
  • 原文地址:https://www.cnblogs.com/teddyma/p/565607.html
Copyright © 2011-2022 走看看