【问题标题】:machineKey on Web Farm?网络农场上的机器密钥?
【发布时间】:2011-07-23 14:29:31
【问题描述】:

有些文章说的是一回事,有些文章说的是另一回事...... 我需要解决问题在我的脑海中

1) 如果我在我的网络农场中使用 StateServer,我需要设置相同的 MachineKey ... 为什么? 是 viewState 问题 还是 session 问题 ? StateServer 解决方案已处理会话问题... 所以我不明白... 还是为了 viewState ...?

2)这是否也适用于Sql session Server?

3) 或者 MachineKey 问题仅适用于加密的 ViewState 情况?(MAC...)??

我很困惑!

【问题讨论】:

  • 加密/解密表单身份验证cookie也需要它
  • 但如果我不使用表单身份验证,MachineKey 是否用于视图状态解码机制? stateserver 中的会话是否受 machineKey 影响?

标签: asp.net


【解决方案1】:

网络场服务器需要共享同一个 machineKey 的原因是,在任何涉及加密/解密的场景中,这都是他们将使用的密钥。因为它是一个网络农场,所以您无法知道哪台机器将处理任何特定请求,因此它们都必须拥有相同的密钥,以便他们可以解密由农场中其他机器加密的项目,并且他们加密的任何东西都可以在稍后被另一台机器解密。

【讨论】:

  • 这部分我理解,我的问题是:如果我将会话存储在 WabFarm 的 stateServer 中,这些会话是否受 machineKey 的影响?我知道 viewstate CRC 检查确实受 MachineKey 值的影响。问题是针对 StateServerSessions 的。 (我没有使用表单身份验证。)谢谢。
  • 是的,根据msdn.microsoft.com/en-us/library/ms178586.aspx,farm 中的所有服务器在使用状态服务器时必须具有相同的 machineKey。
猜你喜欢
  • 1970-01-01
  • 2020-10-04
  • 2013-08-24
  • 2012-05-25
  • 1970-01-01
  • 1970-01-01
  • 2023-03-20
  • 2017-02-14
  • 1970-01-01
相关资源
最近更新 更多