【问题标题】:ChangePassword control does not work on unauthenticated userChangePassword 控件不适用于未经身份验证的用户
【发布时间】:2009-12-18 08:19:47
【问题描述】:

不确定某处或其他什么地方配置错误。经过身份验证的用户可以更改他的密码,但对于未经身份验证的用户,单击更改密码按钮不会执行任何操作。也没有显示错误。

有什么想法吗?

【问题讨论】:

  • 有道理...在您证明自己是谁之前,我不会让您更改密码...
  • 澄清:用户通过点击密码找回邮件中的链接被重定向。用户提供他的用户名和临时密码。
  • @sjlewis:如果用户提供了他的用户名和临时密码,那么他是否没有通过身份验证?这就是临时密码的用途,对吧?
  • 即使他在更改密码页面中提供了用户名和密码,他也没有通过身份验证。这看起来很奇怪,因为我输入的任何内容都会被清除,就像页面刚刚被刷新一样。我尝试在控件的事件中放置断点,但没有触发任何内容。不过,验证器可以工作。
  • 我相信是框架内的代码阻止了这种情况。正如 Oded 所说,这是一种预期的行为。即使我是设计师,我也会选择这种方式。

标签: c# asp.net login-control


【解决方案1】:

我同意 Oded... 但是如果您仍然想让未经授权的用户更改密码...检查密码更改页面是否在您的 Web.config 文件的安全部分中...可能您可能已经给出了一个仅针对授权用户对所有页面进行全面授权...检查您的授权标签。如果是这样,您可以使用 web.config 文件中的位置标签仅更改密码更改页面的授权设置...

【讨论】:

  • 此页面未设置任何内容。所有人都可以访问。
【解决方案2】:

临时解决方法是使用“returnUrl=ChangePassword.aspx”重定向到登录页面。登录后,用户被重定向到 ChangePassword.aspx 并且更改密码控制起作用。

【讨论】:

    猜你喜欢
    • 2016-11-30
    • 2020-11-15
    • 2016-01-17
    • 2018-01-07
    • 1970-01-01
    • 2011-02-08
    • 1970-01-01
    • 2011-05-15
    • 1970-01-01
    相关资源
    最近更新 更多