如何加密ASP.NET配置数据

ASP.NET url参数传递加密及解密方法 微软自己本身的加密及解密对象及方法,方便供广大的开发人员的使用! 立即下载

 

本文摘自:http://tech.it168.com/KnowledgeBase/Articles/8/2/c/82c207a33f1d01b3fa822a593ff17e75.htm

受保护的配置

ASP.NET 2.0推出了一个受保护的配置(protected configuration)特性,允许您使用数据加密API(DPAPI)或RSA加密对machine.config和web.config文件进行加密。开发者一直希望这种类型的功能,以便可以对连接字符串、账户证书等敏感数据加以保护。

这项功能允许开发者加密配置文件的一个或几个部分。下表列出了一些可以进行加密的部分:

  • appSettings:定义和存储定制应用值。
  • connectionStrings:通过数据库连接字符串访问外部数据源。
  • Identity:包含Web应用程序身份,其中可能包括模拟证书。
  • SessionState:给当前应用程序配置会话状态设置。

您不能使用受保护配置特性来配置web.config和machine.config文件的以下部分:

  • processMode
  • runtime
  • mscorlib
  • startup
  • system.runtime.remoting
  • configProtectedData
  • satelliteassemblies
  • cryptographySettings
  • cryptoNameMapping
  • cryptoClasses

.NET Framework提供两种方法加密配置文件:aspnet_regiis.exe命令行实用工具和开发者应用程序代码加密。本文主要说明命令行加密方法。

ASP.NET IIS注册工具

ASP.NET IIS注册工具(aspnet_regiis.exe)是.NET Framework框架的一个标准组成部分。它允许您更新一个ASP.NET应用程序的脚本映射,使其指向与工具相关的ASP.NET ISAPI版本,因为一个系统中可能存在几个ASP.NET版本。您还可以用这个工具来显示所有已安装ASP.NET版本的状况,注册与工具关联的ASP.NET版本,创建客户-脚本目录,并执行其它配置操作。

这个工具包含大量的命令行选项,包括加密(pef)和解密(pdf)。您可以使用/?选项获得帮助。加密选项利用DPAPI加密数据。下面我将以列表A中的web.config文件为例进行说明:

列表A

<?xml version="1.0"?>

<configuration>

<appSettings>

<add key="site" value="TechRepublic.com" />

</appSettings>

<connectionStrings>

<add name="db" connectionString="connection details" />

</connectionStrings>

<system.web>

<compilation debug="true"/>

<authentication mode="Windows"/>

<authorization>

<allow users="tester"/>

</authorization>

<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">

<error statusCode="403" redirect="NoAccess.htm"/>

<error statusCode="404" redirect="FileNotFound.htm"/>

</customErrors>

</system.web>

</configuration>

有了这个文件,我就可以用下面的命令行加密配置文件connectionStrings部分的内容:

aspnet_regiis -pef "connectionStrings" "c:inetpubwwwroottrconfig"

上面命令的结构非常简单,如下表所述:

  • aspnet_regiis:ASP.NET IIS注册工具。
  • -ped:加密一个配置文件配置部分的命令行选项。
  • “connectionStrings”:被加密部分的名称。
  • “c:inetpubwwwroottrconfig”:本地网站的物理地址。

完成后,您将收到一段成功或失败信息。例如,列表B中包含connectionStrings部分被加密的web.config文件。(如果您希望复制并粘贴代码,这里是列表B的链接。)

<?xml version=”1.0″?>

<configuration xmlns=”http://schemas.microsoft.com/.NetConfiguration/v2.0″>

<appSettings>

<add key=”site” value=”TechRepublic.com” />

</appSettings>

<connectionStrings configProtectionProvider=”RsaProtectedConfigurationProvider”>

<EncryptedData Type=http://www.w3.org/2001/04/xmlenc#Element

xmlns=”http://www.w3.org/2001/04/xmlenc#”>

<EncryptionMethod Algorithm=”http://www.w3.org/2001/04/xmlenc#tripledes-cbc” />

<KeyInfo xmlns=”http://www.w3.org/2000/09/xmldsig#”>

<EncryptedKey xmlns=”http://www.w3.org/2001/04/xmlenc#”>

<EncryptionMethod Algorithm=”http://www.w3.org/2001/04/xmlenc#rsa-1_5″ />

<KeyInfo xmlns=”http://www.w3.org/2000/09/xmldsig#”>

<KeyName>Rsa Key</KeyName>

</KeyInfo>

<CipherData>

<CipherValue>hlcvZ+8tPctwMZ5L68zsjWR5uySk5iqbGN6vNa94xrvdAEg2hIo1cexVOITMnVHdBfU7rXWoo3X5KfB3JhrBQQZdFXtAGqR7J3I4GUm6JDu7wWgM5Npb0Vyh+l6FwwEQYj7GfulTO+I3rWLkG7E44Sqzv75VG9QIU7oBH0d+jXo=</CipherValue>

</CipherData>

</EncryptedKey>

</KeyInfo>

<CipherData>

<CipherValue>oEe1fu5aiY0AtsgovXG7TVdxSZw8FU1w18LhdSmL5pptKtOnSYIZ6gVzm9B5/n4t5PWsn7BqGmd535JPe4G+TAqIyiniYQEKLXW3YVHRJX19vlwIIn6y3nyyy8gHE2kHC3LBvkqAtE7sbRlVxGSxpA==</CipherValue>

</CipherData>

</EncryptedData>

</connectionStrings>

<system.web>

<compilation debug=”true” defaultLanguage=”c#” />

<authentication mode=”None” />

<authorization>

<allow users=”tester”/>

</authorization>

<customErrors mode=”RemoteOnly” defaultRedirect=”GenericErrorPage.htm”>

<error statusCode=”403″ redirect=”NoAccess.htm”/>

<error statusCode=”404″ redirect=”FileNotFound.htm”/>

</customErrors>

</system.web>

</configuration>

文件的其它部分没有变化,但您也可以选择加密其它部分。例如,您可以加密实例文件中的appSettings部分,屏蔽它的数据,以免别人窥视。

如果您使用一个加密文件,您就需要对它进行解密,用命令行可以方便地进行解密。下面的命令行将前面web.config文件的connectionStrings部分应用的加密过程进行解密。

aspnet_regiis -pdf "connectionStrings" "c:inetpubwwwroottrconfig"

这个命令将加密文件返回到明文版本,因此您可以对其进行修改,并在编辑完成后重新加密。

asp.net 加密解密 三种方法 实例 asp.net 加密 解密 三种方法 实例 立即下载

相关推荐

在ASP.Net中实现RSA加密的方法

在我们实际运用中,加密是保证数据安全的重要手段。以前使用ASP时,对数据加密可以使用MD5和SHA1算法,这两种算法虽然快捷有效,但是无法对通过它们加密的密文进行反运算,即是解密。因此需要解密数据的场合,这两种方法就不太适合了。当然你也可以自己编写适用的加密和解密程序,不过这对编写者的数学水平有很高的要求,一般人是很难做到的。 现在,随着ASP.Net的推出,彻底改变了以前ASP下的编程模式。我们能够利用.Net Framework中的类提供的加密服务来保证数据安全。目前应用较为广泛的加密方法是使用RSA算法进行加密。在.Net Framework中与RSA加密算法相关的类主要有两个:RSA

asp.net如何为配置文件加密

asp.net如何为配置文件加密

Markarth的博客 1280

从CORDIC到DDS:手把手拆解《Verilog传奇》第9章的实战项目(附可跑通的代码)

本文详细解析了如何从CORDIC算法到DDS系统的完整实现过程,基于《Verilog传奇》第9章的实战项目,提供了可运行的Verilog代码。内容涵盖CORDIC算法的硬件实现、DDS系统架构设计、完整系统集成与验证,以及实际部署中的性能调优技巧,适合数字IC和FPGA开发者深入学习。

weixin_42623010的博客 413

Asp.net中URL加密和解密

下面介绍常用的加密解密方法: 1.加密。   Response.Redirect("DetailInfo.aspx?id=" + Convert.ToBase64String(System.Text.Encoding.Default.GetBytes("sp10006")).Replace("+","%2B"));    2.解密。   string ID = System.Text.

rgypf1988的专栏 3974

win10安装openvpn客户端

进入C:\Program Files\TAP-Windows\bin目录,然后右键用管理员权限执行addtap.bat文件,此文件执行会创建一个网卡。链接:https://pan.baidu.com/s/1KAifTiP7qp1i5ZkfdnfwkA。4.2 进入安装目录的config下新建一个文件夹,将证书文件全部挪进去(不移动.ovpn文件)3.4 将拿到的ssl认证文件放入安装目录的config目录下。然后修改ovpn文件 “./”代表当前路径,第二个链接重复。3.1 一直下一步到这里打上勾。

qq_36200932的博客 3万+

OpenClaw 企业级自动化系统架构设计与实现

本文介绍基于 OpenClaw 构建的企业级自动化系统的完整架构设计、技术选型、实现细节和性能优化方案。

2604_95445636的博客 482

ASP.net 密码加密和使用密码登录

一.说明 此文是小白在学习张晨光老师的视频教学<<Asp.Net WEB服务器编程技术>>中做的学习笔记,一些知识点也是跟着教程走的,大家也可以去老师的主页去学习,谢谢大家. 这一篇要练习的是,如下课程的代码: 二.密码加密类(ChangPwd.cs) using System; using System.Collections.Generic; using System.Linq; using System.Security.Cryptography; using System.

m0_56227168的博客 2763

从软体机器人到鞋垫分析:Abaqus超弹性材料(Ogden模型)仿真配置全流程

本文详细介绍了Abaqus中Ogden模型在超弹性材料仿真中的应用全流程,涵盖从实验数据导入、参数拟合到模型构建与求解优化的关键步骤。特别针对鞋垫分析等生物力学场景,提供了单元选择、接触设置和并行计算等实用技巧,帮助工程师实现高精度仿真分析。

weixin_42525385的博客 399

ASP.NET(C#)常用数据加密和解密方法汇总

数据加密技术是网络中最基本的安全技术,主要是通过对网络中传输的信息进行数据加密来保障其安全性,这是一种主动安全防御策略,用很小的代价即可为信息提供相当大的安全保护。 一、加密的基本概念 “加密”,是一种限制对网络上传输数据的访问权的技术。原始数据(也称为明文,plaintext)被加密设备(硬件或软件)和密钥加密而产生的经过编码的数据称为密文(ciphertext)。将密文还原为原始明文的过程称为解密,它是加密的反向处理,但解密者必须利用相同类型的加密设备和密钥对密文进行解密。 加密的基本功能包括: 防

weixin_45978023的博客 1631

《UDS协议从入门到精通》系列——图解0x14:清除诊断信息

图解0x14:清除诊断信息,简洁易懂,迅速上手!

车载系统攻城狮 4824

从VLM到VLA概论

智驾视觉大模型

xiaomu_347的博客 1708

asp.net 加密解密URL

网上很多人在问怎么实现Web系统URL传输(表单提交)参数加密。例如:要进行一个用户帐号编辑,要传递用户的ID,URL如下:http://localhost/mysystem/editAccounts.aspx?ID=2 但又不想让别人知道这个用户的ID为2,恶意的使用者可能还会将2修改,改为别的用户ID。 加密传递的参数值可以解决问题。 以下是自己写的DEC加密、解密的基类。 文...

编程资料大全 187

遥感图像地物覆盖分类,数据集制作-分类模型对比-分类保姆级教程

1.新建shp文件地理坐标系保持和影像一致,面类型2.打开属性表3.添加字段这里分类6类,点击添加值添加添加完毕开始人工选地物类型,制作数据集开始标注,标注的时候可以借助谷歌地图来看标记足够多的样本打开面转栅格工具设置nodata值为15。

热爱分享,热爱记录 2524

如何加密ASP.NET配置数据[]

我已经讨论过如何应用ASP.NET 2.0中的配置文件并解释了配置文件处理,现在,我将说明如何通过加密方法保护存储在配置文件中的数据,并描述ASP.NET 2.0中的新特性。 我首先概括叙述加密选项,然后继续说明配置文件中数据值的实际加密过程。 受保护的配置 ASP.NET 2.0推出了一个受保护的配置(protected configuration)特性,允许您使用数据加密API(DPAP...

weixin_34198797的博客 194

【语音识别】基于MFCC特征实现说话人语音识别matlab源码

1 模型 采用能够反映人对语音的感知特性的Mel频率倒谱系数(MFCC)作为特征参数,以及为避免时间规整问题采用矢量量化技术开发的说话人识别系统.MFCC主要的是模拟人耳的听觉过程,相对于其它参数它对语音波形的变化不敏感,更加稳定,系统取得很好的识别结果,实验表明系统训练和识别的计算量和存储量都比较低. 2 部分代码 functionvarargout=Main(varargin) % MAIN M-file for Main.fig % MAIN, by itself...

qq_59747472的博客 848

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

[转载]如何加密ASP.NET配置数据[]

文章来源:http://www.cnblogs.com/lxinxuan/archive/2007/07/25/831456.html 本文将说明如何通过加密方法保护存储在配置文件中的数据,并描述ASP.NET 2.0中的新特性。 首先概括叙述加密选项,然后继续说明配置文件中数据值的实际加密过程。 受保护的配置 ASP.NET 2.0推出了一个受保护的配置(protected confi...

weixin_30376453的博客 97

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

那些年朋友劝,该知道的ASP.NET -如何加密ASP.NET配置数据

ASP.NET 2.0推出了一个受保护的配置(protected configuration)特性,允许您使用数据加密API(DPAPI)或RSA加密对machine.config和web.config文件进行加密。开发者一直希望这种类型的功能,以便可以对连接字符串、账户证书等敏感数据加以保护。 可以进行加密的部分:    appSettings:定义和存储定制应用值。    connect

56 978

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

ASP.NET Core 数据保护(Data Protection 集群场景)【下】

ASP.NET Core 数据保护(Data Protection 集群场景)【下】

秉持Love and share的态度去学习和生活 835

ASP.NET2.0 加密Web.Config的配置Section

把明文的密码写在Web.Config里面总是不太好吧!加密一下,至少显得专业点,下面是我的方法:aspnet_regiis -pef  "connectionStrings"  "f:/DOTNETAPP2.0/SCHOOLPROFILE" -prov "DataProtectionConfigurationProvider" 注意:后面一定要"DataProtectionConfigur

2211

浅谈ASP.NET配置文件加密

在刚刚完成的一个ASP.NET项目中,遇到了这么一个问题,项目部署到生产环境中时,领导要求项目中的配置文件(如web.config,app.config)中不能出现敏感字符,如:数据库连接,等等。 第一个想到的方法是,写一个加密解密算法,将这些配置文件中的值以密文的方式存到config文件中,代码中config文件的值的时候,再进行解密。这个方法直接被否定了,因为代码中,获取config值的地方...

weixin_30568715的博客 374

mysql连接字符串加密配置文件_Asp.net2.0如何加密Web.config配置文件数据库连接字符串...

在asp.net2.0中,发布网站时,加密web.config,这样可以有效保证数据库用户和密码安全,其步骤如下:①添加密钥执行:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis -pc "hnlaw" -exp其中"hnlaw"为密钥名称②添加web.config节点在web.config的之间添加:注意:这里keyConta...

weixin_39914975的博客 170

ASP.NET web.config 加密

通常我们都会把数据库连接字符串也在web.config中,网站不是在服务器上,为了防止其他用户获取服务器数据库连接密码,需要 对web.config中的字符串加密。 解决方法: 1:通常做法是通过加密、解密算法,通过自己的密钥把连接字符串加密后,在放入web.config中,在程序dbhelper中获取连接字符串时候 再进行解密。 2:利用.net2.0自身的加密工具加密。...

ding1974的博客 204

asp.net2.0如何加密数据库联接字符串

asp.net2.0如何加密数据库联接字符串在asp.net2.0中,发布网站时,加密web.config,这样可以有效保证数据库用户和密码安全,其步骤如下: 1.添加密钥:执行:c:/windows/microsoft.net/framework/v2.0.50727/aspnet_regiis -pc "hnlaw" -exp 其中"hnlaw"为密钥名称.2.添加web.co

kingofbird的专栏 980

ASP.NET 2.0加密Web.config文件

可以使用受保护配置来加密 Web 应用程序配置文件(如 Web.config 文件)中的敏感信息(包括用户名和密码、数据库连接字符串和加密密钥)。对配置信息进行加密后,即使攻击者获取了对配置文件的访问,也可以使攻击者难以获取对敏感信息的访问,从而改进应用程序的安全性。 针对asp.net 2.0的应用程序的数据库链接字符串进行加密:例如,未加密的配置文件中可能包含一个指定用于连接到数据...

aisong6119的博客 189

ASP.NET 2.0加密Web.config 配置文件

可以使用受保护配置来加密 Web 应用程序配置文件(如 Web.config 文件)中的敏感信息(包括用户名和密码、数据库连接字符串和加密密钥)。对配置信息进行加密后,即使攻击者获取了对配置文件的访问,也可以使攻击者难以获取对敏感信息的访问,从而改进应用程序的安全性。 针对asp.net 2.0的应用程序的数据库链接字符串进行加密:例如,未加密的配置文件中可能包含一个指定用于连接到数据...

weixin_30564901的博客 124
上一篇: HTTP协议分析
下一篇: request.getRequestDispatcher
VS_URL
博客等级 码龄15年 12粉丝 29原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值