Of course.
You can put out-of-band data in a context when in your provider, and then pick it up in the error handler of your input control to set the rejection text.
public override bool ValidateUser(string username, string password) { // in membership provider HttpContext.Current.Items["loginFailureReason"] = "Locked Out"; return false; } // in login codebehind protected void Login1_LoginError(object sender, EventArgs e) { Login1.FailureText = (string) HttpContext.Current.Items["loginFailureReason"]; }
source share