• Web.config加密——使用aspnet_regiis


    系列目录:

        Web.config加密——基础知识

        Web.config加密——使用aspnet_regiis

        Web.config加密——使用编程方式方式

        web.config加密与解密(转) (以前转载别人的文章)
    ------------------------------------------------------------------

    aspnet_regiis工具有注册IIS使用的.NET Framework版本、对Web.Config进行加密等功能。这里我们主要使用它进行Web.Config加密。
    我没有对aspnet_regiis进行测试,主要是我更喜欢用写程序的方式加密。

    aspnet_regiis位置:

        C:\windows\Microsoft.Net\Framework\V20.50727。

    用法:

    加密connectionStrings区块

        aspnet_regiis -pe 'connectionStrings' -app '/appPosition' -prov 'RSAProtectedConfigurationProvider'

      解密connectionStrings区块

        aspnet_regiis -pd 'connectionStrings' -app '/appPosition'

    让加密后的区块使用时不需解密的话,需要授权给NETWORK SERVICE对RSA金钥容器的访问权。代码如下:

        aspnet_regiis -pa 'NetFrameworkConfigurationKey' 'NT AUTHORITY\NETWORK SERVICE'

        说明: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


    脚本映射(该脚本映射指向与 Aspnet_regiis.exe 关联的 ASP.NET ISAPI
    版本)安装到指定应用程序根路径及其子目录下的所有 ASP.NET 应用程序中。更新指定的路径中及其下面使用早期 ASP.NET ISAPI
    版本的所有现有脚本映射。

    -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 的权限。此参数采用下面的可选修饰符:

    • -pku   将默认的计算机容器替换为用户指定的容器。

    • -csp provider   指定要使用的容器提供程序。

    • -full   指定应该添加完全访问权限而不是默认的只读访问权限。

    -pc container

    在指定容器中创建 RSA 公钥/私钥对。此参数采用下面的可选修饰符:

    • -size keySize   指定密钥大小。默认值为 1024 字节。

    • -pku   将计算机上的默认密钥容器替换为用户指定的容器。

    • -exp   指定必须可以导出的私钥。

    • -csp provider   指定要使用的容器提供程序。

    -pd section

    对配置节进行解密。此参数采用下面的可选参数:

    • -app virtualPath   指定应该在包含路径的级别进行解密。

    • -location subPath   指定要解密的子目录。

    • -pkm   指定应该对 Machine.config 而非 Web.config 文件进行解密。

    -pdf section webApplicationDirectory

    对指定物理(非虚拟)目录中的 Web.config 文件的指定配置节进行解密。

    -pe section

    对指定的配置节进行加密。此参数采用下面的可选修饰符:

    • -prov provider   指定要使用的加密提供程序。

    • -app virtualPath    指定应该在包含路径的级别进行加密。

    • -location subPath   指定要加密的子目录。

    • -pkm   指定应该对 Machine.config 而非 Web.config 文件进行加密。

    -pef section webApplicationDirectory

    对指定物理(非虚拟)目录中的 Web.config 文件的指定配置节进行加密。

    -pi container file

    将 RSA 公钥/私钥对从指定的 XML file 导入指定的 container。此参数采用下面的可选修饰符:

    • -pku   将默认的计算机容器替换为用户指定的容器。

    • -exp   指定可以导出私钥。

    • -csp provider   指定要使用的容器提供程序。

    -pr container account

    移除指定的用户或组 account 对指定的项 container 的访问权限。此参数采用下面的可选修饰符:

    • -pku   将默认的计算机容器替换为用户指定的容器。

    • -csp provider   指定要使用的容器提供程序。

    -px container file

    将 RSA 公钥/私钥对从指定的容器导入指定的 XML 文件。此参数采用下面的可选修饰符:

    • -pku   将默认的计算机容器替换为用户指定的容器。

    • -csp provider   指定要使用的容器提供程序。

    -pz container

    删除指定的密钥容器。此参数采用下面的可选修饰符:

    • -pku   将默认的计算机容器替换为用户指定的容器。

      

  • 相关阅读:
    【转】Java操作CSV文件导入导出
    【转】Java压缩和解压文件工具类ZipUtil
    Python之multiprocessing.Pool(创建多个子进程)
    Openstack平台虚拟机疏散失败提示(pymysql.err.OperationalError) (2013, 'Lost connection to MySQL server during query')问题
    kubernetes部署redis主从高可用集群
    Ceph性能测试
    python日志模块
    kubernetes删除pod,pod一直处于Terminating状态
    python执行提示“ImportError: No module named OpenSSL.crypto”
    二进制部署kubernetes集群_kube-apiserver提示"watch chan error: etcdserver: mvcc: required revision has been compacted'
  • 原文地址:https://www.cnblogs.com/scottckt/p/2061074.html
Copyright © 2020-2023  润新知