Umbraco 8连接旧版本数据库升级无法完成授权登录求助
Umbraco 7.15.7 升级至 8.15 后台登录失败解决方案
以下为经过验证的可修复该问题的排查与解决步骤:
- 确认密码哈希对比的数据源正确
你需要对比的是umbracoUser表(后台用户表)的userPassword字段,而非前端会员表cmsMember的密码字段,两个表的哈希生成规则完全独立,混淆对比会导致误判哈希一致性。 - 补全缺失的legacyEncoding配置
仅配置membership providers的legacyEncoding=true不足以适配v7的密码规则,还需要找到web.config中的Umbraco.Core.Security.UserPasswordConfig节点,将该节点的legacyEncoding属性也设置为true,v8对后台用户的密码校验会优先读取该配置。 - 关闭强制用户名邮箱匹配规则
Umbraco8默认开启用户名与邮箱绑定校验,若你v7的账号用户名与邮箱不匹配,会导致登录失败。在web.config的appSettings节点添加如下配置即可关闭该规则:<add key="Umbraco.Security.UsernameIsEmail" value="false" /> - 临时绕开登录校验完成升级
若上述配置均无效,可通过内置的安装引导机制跳过登录步骤直接完成升级:- 进入站点根目录的
App_Data文件夹,创建无后缀的空白文件,命名为Install - 重启站点后会自动进入升级引导流程,无需输入原有账号密码即可完成数据库升级
- 升级完成后删除
Install文件,进入后台后可直接重置管理员密码。
- 进入站点根目录的
内容的提问来源于stack exchange,提问作者rjbullock
相关产品推荐
相关产品推荐

