public ActionResult ExternalLoginConfirmation(RegisterExternalLoginModel model, string returnUrl) { string[] loginData; if (User.Identity.IsAuthenticated || (loginData = CryptoUtility.TryDeserialize("oauth", model.ExternalLoginData)) == null) { return this.RedirectToAction("Manage"); } string provider = loginData[0]; string providerUserId = loginData[1]; string providerUserName = loginData[2]; App.Data.User user; if (ModelState.IsValid && (user = this.membership.CreateUser( userName: model.UserName, email: model.Email, password: null, displayName: model.UserName, providerName: provider, providerUserID: providerUserId, providerUserName: providerUserName)) != null) { this.formsAuthentication.SetAuthCookie(user.UserName, createPersistentCookie: false); return this.RedirectToLocal(returnUrl); } ViewBag.ProviderDisplayName = OpenAuth.GetProviderDisplayName(provider); ViewBag.ReturnUrl = returnUrl; return this.View(model); }