【问题标题】:Adding machineKey to machine.config将 machineKey 添加到 machine.config
【发布时间】:2012-04-26 16:35:41
【问题描述】:

我想将 machineKey 添加到我的 machine.config 中,因为我正在使用 Web 场场景中的 web.config 连接字符串的编程加密。

我的问题是,我应该将 machineKey 放在 machine.config 文件中的什么位置?目前还没有可以替换的,我怀疑它是自动生成的,所以应该放在哪里?

【问题讨论】:

  • 我在 machine.config 中看到的内容:

标签: asp.net .net encryption web-config machine.config


【解决方案1】:

把它放在<system.web>下面就行了

如果需要生成密钥,使用this SO post所示流程

【讨论】:

  • 不应该只从 IIS 中生成密钥吗?
  • @davidb 我想我应该做出回应,因为这仍在获得支持。对于有权访问 IIS 的人来说,使用 IIS 无疑是一种选择(我知道,开发人员确实应该设置本地 IIS,但我遇到过很多不关心它的人)
  • @davidb IIS Express(VS 自带的那个)和一个 azure 共享 webapp 通常在生产应用程序要在 Azure 上时就足够了。所以 +1 链接!
  • aspnetresources.com/tools/machineKey 不再存在。 (那是一个日本网站?)
【解决方案2】:

内部<system.web>

<system.web>
    <machineKey 
        validationKey="....." 
        decryptionKey="....." 
    />

至少在我的文件底部。我认为 system.web 中元素的顺序并不重要,只要它是 system.web 元素正下方的顶层即可。

【讨论】:

    【解决方案3】:

    从网站获取密钥可能存在安全风险。

    有一个简单的方法,只需使用您的 IIS 控制台

    IIS 控制台打开。 点击电脑钥匙

    下一步是设置您的密钥。选择适当的,取消标记框以手动生成您的密钥,最后点击Generate Keys

    最后,进入你的 Web.Config 并在上面设置标签。

    z

    【讨论】:

      【解决方案4】:

      【讨论】:

        猜你喜欢
        • 2011-04-20
        • 2015-10-03
        • 2019-04-23
        • 1970-01-01
        • 1970-01-01
        • 2015-12-26
        • 2022-01-24
        • 2014-04-27
        相关资源
        最近更新 更多