【问题标题】:How to properly encrypt my Web.config using aspnet_regiis.exe?如何使用 aspnet_regiis.exe 正确加密我的 Web.config?
【发布时间】:2025-11-22 22:25:01
【问题描述】:

基于this page,我做了以下事情:

  1. 转到“所有程序”->“Microsoft Visual Studio 2012”->“Visual Studio 工具”->“打开 VS2012 x64 本机工具命令提示符”。
  2. 键入:aspnet_regiis -pe "connectionStrings" -app "C:/FirstName-Projects/ProjName-TEST/SolutionName/Web.config" -prov "DataProtectionConfigurationProvider"
  3. 收到:“-app 参数中使用的值必须以正斜杠开头。”

我猜我在尝试通过我的 C: 目录调用 Web.config 文件时做错了什么?

然后我通读到步骤 3.4 的部分,并使用 aspnet_regiis -pef "connectionStrings" C:FirstName-Projects/ProjName-TEST prov "DataProtectionConfigurationProvider" 尝试了 -pef,结果是我可以提供的所有注册选项的完整列表。

任何人都可以根据 C:/FirstName-Projects/ProjName-TEST/SolutionName/Web.config 中的 Web.config 文件向我提供一些关于使用什么的输入吗?

【问题讨论】:

    标签: asp.net asp.net-mvc encryption web-config aspnet-regiis.exe


    【解决方案1】:

    请使用以下语法加密物理文件。

    aspnet_regiis -pef "connectionStrings" "C:/FirstName-Projects/ProjName-TEST/SolutionName"
    

    确保以管理员身份运行命令编辑器

    注意:应用程序是指您提到的命令中的 IIS 虚拟路径

    【讨论】:

    • 有趣。这导致“参数'PhysicalDirectory'无效。”参数名称:物理目录,失败!想法?
    • 你能用D盘什么的试试吗?我在以下驱动器“d:\temp\solution”上进行了测试。也请更改路径中的斜杠。
    • 这是我在我的机器上测试的命令:aspnet_regiis -pef "connectionStrings" "D:\Projects\jsontest"
    • 越来越近了。将路径中的“/”更改为“\”,收到:“加载配置文件时出错:无法打开文件'C:\FirstName-Projects\ProjName-TEST\SolutionName\web.config'进行写入,因为它是只读或隐藏。失败!”
    • 好的,可以在VS命令提示符下使用“以管理员身份运行”吗?否则将解决方案移至云端硬盘,现在似乎是权限问题。
    最近更新 更多