Kentico 重置密码控件 VALIDATIONFAIL

Kentico Reset password control VALIDATIONFAIL

我们刚刚将网络农场模式下的 Kentico 9 部署到我们的生产环境中。一些用户在登录页面上的重置密码控件遇到问题。在他们单击电子邮件中的 link 后,他们收到的错误记录如下:

重置密码控件 VALIDATIONFAIL 事件 ID 22778 消息:未找到请求标识符。 异常类型:System.Exception 事件 URL: /CMSModules/Membership/CMSPages/ResetPassword.aspx?hash=9f1312c4c6cbfd4aa92c4705ed929eb1b87c348965815fc17700080595e7734f&datetime=19082016154349&returnurl=%2fSpecial%2fLogin.aspx%3f].[=10

我已经检查过 Macro Salt 在 web.config 中并按照说明设置网络场(机器密钥、粘性会话等)。

有什么想法吗???

除非您想在多个网站之间共享身份验证,否则没有必要配置机器密钥。确保 CMSHashStringSalt 像:

在你所有的环境中都是一样的。一旦完成,请转到 System -> Macros 并重新签署所有宏以确保万无一失。

我多次遇到这个问题,原因是宏。如果您正在使用一些内置的 Kentico 控件或自定义。

  1. 只需转至系统->宏并从具有全局管理员访问级别的用户重新分配所有宏。这将确保您的宏不会失败。

  2. 有时转到 表单控件中的那个字段 并删除验证并重新应用验证也可以解决这个问题。

这个问题原来是由于我们用来批量导入用户的 SQL 脚本中的错误造成的。该脚本未向用户首选项添加一行 table。 table 包含用于密码重置的哈希值。