KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I realize OpenID is somewhat of a behemoth, or more complex than a typical registration form, but I feel I'm missing something here. According to this question , I'm supposed to save the unique identifier key I'm given by my provider. The provider will give you a unique ID for each user - this you need to save. It's how you will match up the user that just logged in with a record in your database. In my code (taken from the MVC portion) , this unique ID is given inside the switch in the LogOn() action method: public ActionResult LogOn() { var openid = new OpenIdRelyingParty(); IAuthenticationResponse response = openid.GetResponse(); if (response != null) { switch (response.Status) { case AuthenticationStatus.Authenticated: FormsAuthentication.RedirectFromLoginPage( response.ClaimedIdentifier, false); // <-------- ID HERE! "response.ClaimedIdentifier" break; case AuthenticationStatus.Canceled: ModelState.AddModelError("loginIdentifier", "Login was cancelled at the provider"); break; case AuthenticationStatus.Failed: ModelState.AddModelError("loginIdentifier", "Login failed using the provided OpenID identifier"); break; } } return View(); } [HttpPost] public ActionResult LogOn(string loginIdentifier) { if (!Identifier.IsValid(loginIdentifier)) { ModelState.AddModelError("loginIdentifier", "The specified login identifier is invalid"); return View(); } else {
Tags (comma-separated)
Save Edits
Cancel