private MembershipUser GetUserByServiceKey(OAuthServiceLogOnIdentifyer ServiceIdentifyer) { return GetUserByServiceKey(ServiceIdentifyer.ToGuid()); }
public void LogOn(string UserName, OAuthServiceLogOnIdentifyer ServiceLogOnIdentifyer) { var servIdent = (OAuthServiceIdentifyer)ServiceLogOnIdentifyer; MembershipUser user = GetUserByServiceKey(servIdent.ServiceKey); if (user == null) throw new Exception(string.Format("User with ServiceKey = {0} not found", ServiceLogOnIdentifyer.ToString())); HttpContext.Current.Response.SetUserIdentifyer(new OAuthUserIdentifyer { UserName = UserName, ServiceIdentifyer = servIdent }); }
public bool IsRegistered(OAuthServiceLogOnIdentifyer ServiceLogOnIdentifyer) { return GetUserByServiceKey(ServiceLogOnIdentifyer) != null; }
public MembershipCreateStatus Register(string UserName, OAuthServiceLogOnIdentifyer ServiceLogOnIdentifyer) { MembershipCreateStatus createStatus; var guid = Guid.NewGuid(); var userName = string.Format("<user-{0}>", guid); var serviceIdent = (OAuthServiceIdentifyer)ServiceLogOnIdentifyer; var user = Membership.CreateUser(userName, guid.ToString().ToGuid().ToString(), "*****@*****.**", null, null, true, serviceIdent.ServiceKey, out createStatus); OAuthAccountProfile.SetUserIdntifyer(userName, serviceIdent); return createStatus; }
//ServiceId - OpenId or some unique identifier from OAuth service private string OAuthRegisterOrLoginExternalUser(string UserName, OAuthServiceLogOnIdentifyer ServiceIdentifyer) { if (!OAuthMembershipService.IsRegistered(ServiceIdentifyer)) { var err = OAuthMembershipService.Register(UserName, ServiceIdentifyer); if (err != MembershipCreateStatus.Success) return GetErrorCodeFromString(err); } OAuthMembershipService.LogOn(UserName, ServiceIdentifyer); Response.Cookies.Add(new HttpCookie(".ASPXAUTH_USER", UserName)); return null; }