public HttpCookie CreateFormsAuthenticationCookie(OpenIdUser user) { var ticket = new FormsAuthenticationTicket(1, user.Nickname, DateTime.Now, DateTime.Now.AddDays(7), true, user.ToString()); var encrypted = FormsAuthentication.Encrypt(ticket).ToString(); var cookie = new HttpCookie(FormsAuthentication.FormsCookieName, encrypted); return cookie; }
private OpenIdUser ResponseIntoUser(IAuthenticationResponse response) { OpenIdUser user = null; var claimResponseUntrusted = response.GetUntrustedExtension<FetchResponse>(); var claimResponse = response.GetExtension<FetchResponse>(); if (claimResponse != null) { user = new OpenIdUser(claimResponse, response.ClaimedIdentifier); } else if (claimResponseUntrusted != null) { user = new OpenIdUser(claimResponseUntrusted, response.ClaimedIdentifier); } return user; }
protected override bool AuthorizeCore(HttpContextBase httpContext) { var isAuthorized = base.AuthorizeCore(httpContext); if (isAuthorized) { var authenticatedCookie = httpContext.Request.Cookies[FormsAuthentication.FormsCookieName]; if (authenticatedCookie != null) { var authenticatedCookieValue = authenticatedCookie.Value.ToString(); if (!string.IsNullOrWhiteSpace(authenticatedCookieValue)) { var decryptedTicket = FormsAuthentication.Decrypt(authenticatedCookieValue); var user = new OpenIdUser(decryptedTicket.UserData); var openIdIdentity = new OpenIdIdentity(user); httpContext.User = new GenericPrincipal(openIdIdentity, null); } } } return isAuthorized; }
public OpenIdIdentity(OpenIdUser user) { _user = user; }