要加密配置文件的内容,应将 Aspnet_regiis.exe 工具与 ¨Cpe 选项以及要加密的配置元素的名称一起使用。
使用 ¨Capp 选项可标识将加密其 Web.config 文件的应用程序,使用 -site 选项可标识该应用程序所属的网站。网站是使用 Internet 信息服务 (IIS) 元数据库中的站点号标识的。可以从 ServerVariables 集合中的 INSTANCE_META_PATH 服务器变量中检索站点号。例如,安装 IIS 时,会创建名为“默认网站”的网站作为站点 1。在该站点提供的页中,INSTANCE_META_PATH 服务器变量返回“/LM/W3SVC/1”。如果未指定 -site 选项,将使用站点 1。
使用 ¨Cprov 选项可标识将执行加密和解密的 ProtectedConfigurationProvider 的名称。如果未使用 -prov 选项指定提供程序,将使用配置为 defaultProvider 的提供程序。
下面的命令加密应用程序 SampleApplication 的 Web.config 文件中的 connectionStrings 元素。由于不包含 -site 选项,因此假定该应用程序来自网站 1(IIS 中最常用的默认网站)。加密是使用计算机配置中指定的 RsaProtectedConfigurationProvider 执行的。
|
aspnet_regiis -pe "connectionStrings" -app "/SampleApplication" -prov "RsaProtectedConfigurationProvider" |
在请求应用程序中的页或其他 ASP.NET 资源时,ASP.NET 会对受保护配置节调用提供程序,以解密信息供 ASP.NET 和应用程序代码使用。