1

我的 Web 应用程序需要用户在注册后登录一次,如果用户注销,他必须通过 ConfirmationToken 激活他的帐户。我发现requireConfirmationToken:false可以让你在注册后登录,但你会失去激活,反之亦然。

bool isLoggedIn = WebSecurity.Login(registerModel.Username, registerModel.Password);

// isLoggedIn false if requireConfirmationToken:true & true if requireConfirmationToken:false

有什么建议么 ?

4

2 回答 2

1

这很容易做到,如果用户成功注册并使用非持久 cookie 为他们发出 FormsAuthentication 票证,您只需假设用户是有效的。

FormsAuthentication.SetCookie(username, false);

这将使他们在注册后进行身份验证(嗯,在下一页刷新之后),直到他们关闭浏览器或注销。之后,登录将失败,直到他们激活他们的帐户。

于 2013-08-26T14:36:40.140 回答
0

如果将 requireConfirmationToken 设置为 true,则必须使用电子邮件确认让用户确认他们提供了有效的电子邮件地址。在电子邮件确认过程中,您调用WebSecurity.ConfirmAccount方法。在确认帐户之前,每次登录都会失败。您可以在此处阅读有关设置电子邮件确认的更多信息

于 2013-08-26T12:41:00.520 回答