Search code examples
asp.net-mvcasp.net-identityowin

ExternalSignInAsync - when does it return SignInStatus.RequiresVerification?


I am using the standard MVC template from VS 2013 and using logins with External Ids, ie Google, Facebook, etc.

In AccountController.ExternalLoginCallback, it calls SignInManager.ExternalSignInAsync and the result can be one of SignInStatus.Success, .LockedOut, .RequiresVerification, and .Failure.

I have been able to make it return LockedOut by putting a time later than now in column LockoutEndDateUtc of dbo.AspNetUsers.

When or how does it return RequiresVerification?

I want to use this identity framework but with a bit of customization.


Solution

  • If you are using Two-Factor Authentication, then login will return SignInStatus.RequiresVerification for the user to enter the verification code.

    See Two-factor authentication using SMS and email with ASP.NET Identity