向machine.config添加machineKey

21

我想在机器配置文件中添加machineKey,因为我正在使用编程方式加密Web.config连接字符串的Web Farm场景。

我的问题是,我应该把machineKey放在哪个位置? 如果没有可以替换的现有位置,我怀疑它是自动生成的,那么应该把它放在哪里?


我在machine.config中看到的内容: - Rami Alhamad
4个回答

28

将其放置在<system.web>下方。

如果需要生成密钥,请按照此SO帖子中所示的过程进行。


2
你不应该在IIS中生成密钥吗? - medina
@davidb 我觉得我应该回复一下,因为这个问题仍然得到了赞。对于有权限的人来说,使用IIS肯定是一个选择(我知道,开发人员真的应该设置本地IIS,但我遇到过很多人并不关心它)。 - peroija
@davidb 一般来说,使用随 VS 附带的 IIS Express 和 Azure 共享 Web 应用程序就足以满足在 Azure 上部署生产应用程序的需求。所以感谢提供这个链接! - galdin
1
这是另一个生成密钥的网站:https://www.allkeysgenerator.com/Random/ASP-Net-MachineKey-Generator.aspx - Marisol Gutiérrez
http://aspnetresources.com/tools/machineKey 已经不存在了。 (而且那是一个日本网站吗?) - The Anh Nguyen

10

<system.web> 中:

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

在我的文件中,它位于底部。我认为system.web元素中元素的顺序并不重要,只要它是直接位于顶层,就可以了。


3
从网站获取密钥可能存在安全风险。
有一种简单的方法,只需使用您的IIS控制台即可。

type inetMgr in Start

IIS控制台已打开。 点击“计算机键”。

Computer Keys

下一步是设置您的密钥。选择适当的选项,取消勾选手动生成密钥框,最后点击“生成密钥”。

Screen where generate your keys

最后,进入您的Web.Config文件,在``标签上方设置``标签。

Setting the keys in web.config

z


1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接