加密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"

以上就是加密web.config的方法分享。梦想的路上注定崎岖不定,坎坷萦绕,风雨万阻。而现实的路上注定疲倦不堪,身心伤痕累累,泪眼婆娑。更多关于加密web.config的方法分享请关注haodaima.com其它相关文章!

您可能有感兴趣的文章
asp.net发布后web.config中compilation的debug的值true和false区别点整理

.net webapi接收xml格式数据的3种情况小结

VsCode之使用WebView通信详解

.Net Web Api中利用FluentValidate进行参数验证的方法

webapi跨域使用session的方法示例