加密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的方法分享
-
ASP.NET web.config中数据库连接字符串connectionStrings节的配置方法
-
Java计算文本MD5加密值的方法示例
-
解决在Web.config或App.config中添加自定义配置的方法详解
-
asp.net中js和jquery调用ashx的不同方法分享
-
asp.net代码中修改web.config节点的具体方法
-
ASP.NET Gridview 中使用checkbox删除的2种方法实例分享
-
解决MySQL Workbench gnome-keyring-daemon错误的方法分享
-
Asp.net 页面导航的几种方法与比较 分享
-
ASP.NET加密口令的方法实例