系列目录:
web.config加密与解密(转) (以前转载别人的文章)
------------------------------------------------------------------
aspnet_regiis工具有注册IIS使用的.NET Framework版本、对Web.Config进行加密等功能。这里我们主要使用它进行Web.Config加密。
我没有对aspnet_regiis进行测试,主要是我更喜欢用写程序的方式加密。
aspnet_regiis位置:
C:\windows\Microsoft.Net\Framework\V20.50727。
用法:
加密connectionStrings区块
解密connectionStrings区块
让加密后的区块使用时不需解密的话,需要授权给NETWORK SERVICE对RSA金钥容器的访问权。代码如下:
说明:RSAProtectedConfigurationProvider提供程序使用的 RSA 密钥容器名为 "NetFrameworkConfigurationKey"
附: MSDN中aspnet_regiss参数说明
选项:
选项 | 说明 |
---|---|
-c | 将 ASP.NET 的客户端脚本(如客户端验证脚本)安装到每个 Internet 信息服务 (IIS) 站点目录的 aspnet_client 子目录中。 只安装与 Aspnet_regiis.exe 关联的 ASP.NET 版本的客户端脚本。 |
-disable | 在 IIS 安全控制台中禁用 ASP.NET。 此选项只能与 -i、-ir 或 -r 选项结合使用。此选项不能在 IIS 6.0 之前的 IIS 版本中使用。 |
-e | 从每个 IIS 站点目录的 aspnet_client 子目录中移除 ASP.NET 的客户端脚本。 只移除与 Aspnet_regiis.exe 关联的 ASP.NET 版本的客户端脚本。 |
-ea | 从每个 IIS 站点目录的 aspnet_client 子目录中移除所有 ASP.NET 版本的客户端脚本。 |
-enable | 在 IIS 安全控制台中启用 ASP.NET。 此选项只能与 -i、-ir 或 -r 选项结合使用。此选项不能在 IIS 6.0 之前或 ASP.NET 2.0 版之前的版本中使用。 |
-ga user | 向指定用户授予 ASP.NET. 使用的 IIS 元数据库和其他目录的访问权限。 此选项不能在 ASP.NET 2.0 之前的版本中使用。 |
-i | 安装与 Aspnet_regiis.exe 关联的 ASP.NET 版本,并更新 IIS 元数据库根目录和根目录下的脚本映射。 只更新使用早期 ASP.NET 版本的应用程序的脚本映射。使用新版本的应用程序不受影响。 |
-ir | 安装与 Aspnet_regiis.exe 关联的 ASP.NET 版本,并仅在 IIS 中注册 ASP.NET。 此选项不更新脚本映射。若要安装 ASP.NET 并更新脚本映射,请使用 -i 选项。 |
-k path | 在指定的应用程序根路径及其子目录中,从所有 ASP.NET 应用程序中移除所有 ASP.NET 版本的脚本映射。 |
-kn path | 仅在指定的应用程序根路径中,从 ASP.NET 应用程序中移除所有 ASP.NET 版本的脚本映射。 此选项不影响指定 path 的子目录中的应用程序。 |
-lk | 列出包含 ASP.NET 脚本映射的所有 IIS 元数据库项的路径和版本。 不显示从父项继承 ASP.NET 脚本映射的项。 |
-lv | 列出计算机上安装的所有 ASP.NET 版本的状态和安装路径。 |
-norestart | 禁止在安装或更新 ASP.NET 脚本映射后重新启动 IIS 辅助进程。 如果将手动重新启动 IIS 辅助进程,则将此选项与 -i 或 -r 选项一起使用。 |
-r | 更新 IIS 元数据库中及其下面的所有脚本映射,使其指向与 Aspnet_regiis.exe 关联的 ASP.NET ISAPI 版本。 无论当前版本如何,都会更新现有的所有脚本映射,使其指向与 ASP.NET IIS 注册工具关联的 ASP.NET ISAPI 版本。 |
-s path | 将 |
-sn path | 将脚本映射(该脚本映射指向与该工具关联的 ASP.NET ISAPI 版本)安装到指定应用程序根路径下的 ASP.NET 应用程序中。更新指定路径中使用早期 ASP.NET ISAPI 版本的所有现有脚本映射。 此选项不影响 path 的子目录中的应用程序。 |
-u | 从计算机中卸载与 ASP.NET IIS 注册工具关联的 ASP.NET 版本。此 ASP.NET ISAPI 版本的现有脚本映射自动重新映射到其余已安装的 ASP.NET ISAPI 的最新版本。 |
-ua | 从计算机中卸载所有 ASP.NET 版本。 |
-? | 显示 ASP.NET IIS 注册工具的命令语法和选项。 |
配置选项
选项 | 说明 |
---|---|
-config+ | 允许对计算机上的 ASP.NET 配置进行远程访问。 |
-config- | 禁止对计算机上的 ASP.NET 配置进行远程访问。 |
-pa container account | 为指定用户或组 account 授予访问指定项 container 的权限。此参数采用下面的可选修饰符:
|
-pc container | 在指定容器中创建 RSA 公钥/私钥对。此参数采用下面的可选修饰符:
|
-pd section | 对配置节进行解密。此参数采用下面的可选参数:
|
-pdf section webApplicationDirectory | 对指定物理(非虚拟)目录中的 Web.config 文件的指定配置节进行解密。 |
-pe section | 对指定的配置节进行加密。此参数采用下面的可选修饰符:
|
-pef section webApplicationDirectory | 对指定物理(非虚拟)目录中的 Web.config 文件的指定配置节进行加密。 |
-pi container file | 将 RSA 公钥/私钥对从指定的 XML file 导入指定的 container。此参数采用下面的可选修饰符:
|
-pr container account | 移除指定的用户或组 account 对指定的项 container 的访问权限。此参数采用下面的可选修饰符:
|
-px container file | 将 RSA 公钥/私钥对从指定的容器导入指定的 XML 文件。此参数采用下面的可选修饰符:
|
-pz container | 删除指定的密钥容器。此参数采用下面的可选修饰符:
|