首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Web.Config外部的文件中加密AppSettings

在Web.Config外部的文件中加密AppSettings,可以使用Microsoft的Enterprise Library中的加密功能。

Microsoft Enterprise Library是一个用于.NET应用程序的开发框架,它提供了一系列的工具和组件,可以帮助开发人员更轻松地实现安全、可扩展和可维护的应用程序。其中,Enterprise Library的加密功能可以帮助开发人员将敏感信息(如数据库连接字符串、密码等)加密,以保护应用程序的安全性。

在Web.Config外部的文件中加密AppSettings的步骤如下:

  1. 安装Enterprise Library

在Visual Studio中,打开NuGet包管理器,搜索“Enterprise Library”,并安装“Microsoft.Practices.EnterpriseLibrary.Data”和“Microsoft.Practices.EnterpriseLibrary.Security”两个包。

  1. 配置加密

在应用程序中,使用Enterprise Library的加密功能,可以将敏感信息加密,并将加密后的信息存储在外部文件中。例如,可以使用以下代码将数据库连接字符串加密:

代码语言:csharp
复制
string connectionString = ConfigurationManager.AppSettings["ConnectionString"];
string encryptedConnectionString = Microsoft.Practices.EnterpriseLibrary.Security.Cryptography.Cryptographer.EncryptSymmetric(connectionString);
  1. 读取加密的AppSettings

在应用程序中,可以使用Enterprise Library的解密功能,将加密的AppSettings解密并读取。例如,可以使用以下代码读取加密的数据库连接字符串:

代码语言:csharp
复制
string encryptedConnectionString = ConfigurationManager.AppSettings["EncryptedConnectionString"];
string connectionString = Microsoft.Practices.EnterpriseLibrary.Security.Cryptography.Cryptographer.DecryptSymmetric(encryptedConnectionString);
  1. 使用加密的AppSettings

在应用程序中,可以使用解密后的AppSettings进行数据库连接、身份验证等操作。例如,可以使用以下代码连接到数据库:

代码语言:csharp
复制
string connectionString = ConfigurationManager.AppSettings["ConnectionString"];
SqlConnection conn = new SqlConnection(connectionString);
conn.Open();

总之,在Web.Config外部的文件中加密AppSettings,可以使用Microsoft Enterprise Library的加密功能,以保护应用程序的安全性。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

解密.NET配置文件web.config

0x01 背景 近期有师傅反馈拿到了.NET web.config文件,发现含有数据库账密连接字符串所在标签被加密了,导致看不到MSSQL账户和密码,如下图 图上可看出由...0x02 配置 .NET中有两种配置数据库连接代码方式,它们分别是 appSettings 和 connectionStrings 。...使用 appSettings 和 connectionStrings 配置数据库连接代码时,可分别在 下添加如下代码 2.1 appSettings <appSettings...dotnetKeyRSA密钥容器,命令如下 aspnet_regiis -pc "dotnetKey" -exp 将创建好配置项内容粘贴到web.config里,主要是config文件中加入configProtectedData...,这意味着解密过程必须在同一台计算机上完成才可以,所以通过任意下载文件下载web.config回本地是解不开,如下图IIS权限下执行解密命令返回空,未能解密,通常需要提权后才能解密。

1.1K30

再谈web.configapp.config敏感数据加解密二种方法

//加密web.Config指定节 private void ProtectSection(string sectionName)     {         Configuration config...aspnet_regiis.exe -px "JimmyKeys" "c:\JimmyKeys.xml" 3.web.config增加一节,一般放在之前就可以了...> ...     4.将web.config加密 aspnet_regiis.exe -pef "appSettings" "c:\website" -prov "JimmyRSAProvider...,aspx读取节点时也无需任何解密处理,代码不用做任何修改 注意:并不是所有的节点都能加密,ASP.NET 2.0仅支持对Web.config部分配置节进行加密,以下配置节数据是不能进行加密...cntvs\" 即对下节点加密,这一节点同样适用于代码方式加密,经过多次尝试,似乎除了AppSettings和ConnectionStrings

2K80

数据库连接字符串处理方法!加密解密连接字符串。

修改web.config文件,加入以下代码 <APPSETTINGS> <ADD value="user id=sa;password=sa;server=....;initial catalog=数据库名称" key="connString" /> </APPSETTINGS> 然后需要地方调用就可以了。...5.综合 以上个四种方法各有优越缺点,用哪一个都不是最好,另外还有一个问题没有提及 —— 加密连接字符串。 那么一个项目里,怎么做才是最好方法呢? —— 分层。...项目 <——类(DLL文件) <——存放连接字符串位置 A.对于项目来说呢只需要知道:当我要用连接字符串时候我到DLL里面(调用函数)读取就行了,至于连接字符串具体存放位置、是否加密等都不必关心。...如果是直接读取web.config,那么如果web.config里面放加密连接字符串,那怎么处理?是不是要修改项目,或者是数据层。不要认为修改数据层就不是修改项目了。

4K80

App.config和Web.config配置文件自定义配置节点

2、如果当前页面所在目录下不存在web.config文件或者web.config文件不存在该结点名,则查找它上级目录,直到网站根目录。...所以如果我们对某个网站或者某个文件夹有特定要求配置,可以相应文件夹下创建一个web.config文件,覆盖掉上级文件web.config文件同名配置即可。...asp.net应用程序运行过程,如果web.config文件发生更改就会导致相应应用程序重新启动,这时存储服务器内存用户会话信息就会丢失(如存储在内存Session)。   ...所以如果我们对某个网站或者某个文件夹有特定要求配置,可以相应文件夹下创建一个web.config文件,覆盖掉上级文件web.config文件同名配置即可。...asp.net应用程序运行过程,如果web.config文件发生更改就会导致相应应用程序重新启动,这时存储服务器内存用户会话信息就会丢失(如存储在内存Session)。

1.6K10

.Net4.0 Web.config 配置实践

除根目录外,可以每个要特殊配置子目录下新建一个Web.config文件。它可以继承父目录配置信息以外,可以自定义重写或修改父目录定义设置。...应用运行时对 Web.config 文件修改不需要重启服务就可以生效,因此请注意正确修改内容,否则会引起应用站点异常并报错。...每个会话限制并发请求数 这是为了解决 .NET Framework 4.7、4.7.1 和 4.7.2 引入应用兼容性问题,可以 Web.config 配置节添加如下key...> 更多详情请参考如下链接: 有关迁移到 .NET Framework 4.7.x 操作重定向目标更改 正常运行指定扩展名文件 我们运行一些应用,需要运行 mp4 文件,发现运行时出现错误...要在 appSettings添加键值 Key 名称 3 keyvalue string 要在 appSettings添加键值 Key 值 Value 方法代码如下: public

7210

App.config和Web.config配置文件自定义配置节点

2、如果当前页面所在目录下不存在web.config文件或者web.config文件不存在该结点名,则查找它上级目录,直到网站根目录。...所以如果我们对某个网站或者某个文件夹有特定要求配置,可以相应文件夹下创建一个web.config文件,覆盖掉上级文件web.config文件同名配置即可。...asp.net应用程序运行过程,如果web.config文件发生更改就会导致相应应用程序重新启动,这时存储服务器内存用户会话信息就会丢失(如存储在内存Session)。   ...所以如果我们对某个网站或者某个文件夹有特定要求配置,可以相应文件夹下创建一个web.config文件,覆盖掉上级文件web.config文件同名配置即可。...asp.net应用程序运行过程,如果web.config文件发生更改就会导致相应应用程序重新启动,这时存储服务器内存用户会话信息就会丢失(如存储在内存Session)。

95530

SpringBoot配置文件信息加密

0.背景 SpringBoot项目中,有的配置文件信息比较敏感,比如数据库密码信息等,直接以明文形式写在配置文件或许并不安全. 1.步骤 1.1 pom文件 依赖中加入 <!...DEC()包裹,即DEC(待加密信息),例如: # 原来加密信息 yang.password=admin123 # 修改为 yang.password=DEC(admin123) 1.3 mvn命令加密文件...=yang37 执行该条mvn命令后,配置文件对应部分信息会自动更改为: yang.password=ENC(加密结果) 好,到此这一小节目的达到了,你可以不用看这节剩下内容. 1.3.1 扩展..."); 上面的res就是你加密结果,还需要你手动替换配置文件里面的对应配置信息. yang.password=ENC(加密结果) 1.4 项目启动 解密总要密文串吧?...配置文件编写下面的信息: # 配置加密 jasypt: encryptor: password: 你密码 你肯定会疑惑,密码写这里我还加密干嘛...所以,我们要把密码换个地方存储.

1.5K30

自定义WCF配置文件

我们经常会碰到这样一个场景:需要把WCF配置信息放在一个单独文件,这种情况经常出现在需要为自己开发服务配置,需要采用独立配置文件,而不是只能放到app.config/web.config。...例如在asp.net站点默认 Web.Config 文件中使用: 然后新建 customAppSetting.Config...> 在网站运行时,如果修改 Web.Config 文件会引起站点重启,而修改...1、服务端自定义配置文件ServiceHost父类ServiceHostBase,有一个和配置文件加载密切相关方法,它为: protected virtual void ApplyConfiguration...ChannelFactory方法CreateDescription实现上是从默认配置文件(缺省AppDomain配置文件),所以我们通过重写这个方法就可以实现从外部文件加载配置。

84080

“数据访问函数库”(DataAccessLibrary for .net2.0 )源代码下载 09.06.15更新

连接字符串,web.config里面设置如下: <add name="ConnectionString" connectionString="Data...2、PagerSQLKey 保存属性时候<em>的</em>密钥(<em>加密</em>算法需要使用<em>的</em>)。             空字符串,表示不<em>加密</em>。如果没有设置的话,采用默认<em>的</em>密钥。      ...因为没有使用过Orcale和mySQL,所以没有加入专门<em>的</em>连接方式。 访问数据库时出现错误怎么办?      需要在根目录下面添加一个“log”<em>文件</em>夹,并且设置权限,让asp.net可以写入<em>文件</em>。...当分页控件访问数据库<em>的</em>时候,如果出现错误,那么会在log<em>文件</em>夹里面添加一个文本<em>文件</em>,记录错误信息,包括错误信息和SQL语句,以方便查找错误。       老版本就不提供下载了,弄多了有点乱。

80150

Web.Config文件中使用configSource

我们都知道,asp.net修改了配置文件web.config后,会导致应用程序重启,所有会话(session)丢失。...>  然后代码中进行调用,我VS2010是控制台程序,当然还需要添加引用System.Configuration; namespace ConsoleApplication1 { class...现在可以一个单独文件包括所有支持 configSource 属性配置元素配置设置。但是,当使用 configSource 属性时,由于没有元素设置合并,因此您必须将整个节移动到单独文件。...只能包含一次configSource; 在网站运行时,如果修改 Web.Config 文件会引起站点重启,而修改 My.Config 文件则不会,同时也提高了配置文件可读性 注意,configSouce...文件路径只能为相对物理路径,也就是只能为反斜杠(\),不能用斜杠(/)。

68920

Asp.Net Form验证不通过,重复登录(.net4,4.5form验证兼容性问题)

2.配置影响(如web.configauthentication,machineKey等). 1嘛,基本不可能,ms没这么渣,那就只能从2下手,但是具体什么配置影响到,就不得而知了....通过调用加密方法4.5上生成加密字符串,丢到4.0机器上解密,不通过,提示加密字符串验证不通过. so,我们看看加密方法做了什么 加密方法: 省略部分代码,剩下关键代码。...系统默认值为flase,so.4.5得到加密字符串来自FormsAuthenticationTicketSerializer.Serialize(ticket).而4是在后续代码. so,增加配置...AppSettings.UseLegacyEncryption开关配置.进入EncryptOrDecryptData方法能看到这个参数影响到使用不同加密方式....相关说明: 有关安全更新 2638420 部署指南,请参见 MS11-100 如何配置 ASP.NET 加密模式 看了上面一个,好傻...如果发现问题时候,之后搜索asp.net 旧加密方式.

88320

appsettings与connectionstrings

大家好,又见面了,我是你们朋友全栈君。 这篇文章源于我在做一个手机号码归属地例子时用到了配置文件,于是像视频上说那样,我app.config写下了这段代码: <?...于是继续在网络海洋里游泳…… 首先说一下什么是配置文件.net中提供了一种便捷保存项目配置信息方式,那就是利用配置文件,配置文件文件后缀一般是.config,我们现在学内容里一般默认为...web.config,每个web.config文件都是基于XML文本文件,并且可以保存到web应用程序任何目录。...发布程序是,它不编译进dl,因此可以方便进行改动。...其实我说appsettings和connetionstrings专业说是节点,查到资料中其实有很多节点,而我们现在常用就是这两种了。

27140

GaiaWorld:加密技术区块链意义

如此重要加密算法,需要应用在区块链哪些场景,目前公链又普遍使用什么样加密算法呢?...区块链使用最为广泛加密算法——非对称加密 加密算法一般分为对称加密和非对称加密区块链普遍使用是非对称加密。 对称加密是指:单钥密码系统加密,同一个秘钥可以同时作为信息加密和解密。...换句话说,如果你能破解椭圆曲线加密算法,你就不会在意比特币这点“小钱”。 非对称加密是一个统称,非对称加密,代表算法有 RSA、ECC/SM2。...两者对比之下,各有千秋,但对于追求更高安全性区块链来说,大多数公链还是会选择椭圆曲线算法。 加密算法应用场景 非对称加密区块链主要应用于信息加密、数字签名和登录认证。...签名加密上,GaiaWorld选择是椭圆曲线加密ed25519。

1.5K00

Asp.Net4.0VS2010新变化(1):web.config与publish

Vs2010正式版据说4月12号就要发行,是时候摆弄一下它了  新建web application后,最直观一个变化就在于web.config变干净了: 只有寥寥数行代码,赏心悦目!...另外注意到web.config解决方案视图中,分成了二个: 个人觉得这是吸收了RORdatabase.yml数据库(开发,生产,测试)环境配置思想,我们在做web开发时,难免会对调试/发布二种环境配置做一些调整...,比如:发布环境连接字符串将连接到正式数据库,调试环境连接字符串连接到开发数据库,以往做法是:发布后手动把发布目录下web.config做一些调整再上传,而现在不需要了!...:Transform="Replace"> </system.web...AppSettingtitle节点,将自动替换到最终web.config,当然你也可以发布成Debug模式,以方便部署到测试环境,只需要把解决方案属性修改一下,然后再发布即可:

63380
领券