public System.Threading.Tasks.Task <System.Collections.Generic.IList <Microsoft.AspNet.Identity.UserLoginInfo> > GetLoginsAsync(SoftFluent.Samples.AspNetIdentity2.User user) { System.Collections.Generic.IList <Microsoft.AspNet.Identity.UserLoginInfo> result = new System.Collections.Generic.List <Microsoft.AspNet.Identity.UserLoginInfo>(); SoftFluent.Samples.AspNetIdentity2.LoginCollection userLogins = user.Logins; foreach (SoftFluent.Samples.AspNetIdentity2.Login userLogin in userLogins) { Microsoft.AspNet.Identity.UserLoginInfo userLoginInfo = new Microsoft.AspNet.Identity.UserLoginInfo(userLogin.ProviderName, userLogin.ProviderKey); result.Add(userLoginInfo); } return(System.Threading.Tasks.Task.FromResult(result)); }
protected virtual async Task <AuthenticateResult> ProcessNewExternalAccountAsync(string provider, string providerId, IEnumerable <Claim> claims) { var user = await TryGetExistingUserFromExternalProviderClaimsAsync(provider, claims); if (user == null) { user = await InstantiateNewUserFromExternalProviderAsync(provider, providerId, claims); if (user == null) { throw new InvalidOperationException("CreateNewAccountFromExternalProvider returned null"); } var createResult = await userManager.CreateAsync(user); if (!createResult.Succeeded) { return(new AuthenticateResult(createResult.Errors.First())); } } var externalLogin = new Microsoft.AspNet.Identity.UserLoginInfo(provider, providerId); var addExternalResult = await userManager.AddLoginAsync(user.Id, externalLogin); if (!addExternalResult.Succeeded) { return(new AuthenticateResult(addExternalResult.Errors.First())); } var result = await AccountCreatedFromExternalProviderAsync(user.Id, provider, providerId, claims); if (result != null) { return(result); } return(await SignInFromExternalProviderAsync(user.Id, provider)); }
public override Task <T> FindUserByLogin(Microsoft.AspNet.Identity.UserLoginInfo login) { throw new NotImplementedException(); }
public virtual System.Threading.Tasks.Task <ModelCodeFluent.Identity.User> FindAsync(Microsoft.AspNet.Identity.UserLoginInfo userLoginInfo, System.Threading.CancellationToken cancellationToken) { cancellationToken.ThrowIfCancellationRequested(); this.ThrowIfDisposed(); return(System.Threading.Tasks.Task.FromResult(ModelCodeFluent.Identity.User.LoadByUserLoginInfo(userLoginInfo.ProviderKey, userLoginInfo.LoginProvider))); }
public virtual System.Threading.Tasks.Task <ModelCodeFluent.Identity.User> FindAsync(Microsoft.AspNet.Identity.UserLoginInfo userLoginInfo) { return(this.FindAsync(userLoginInfo, System.Threading.CancellationToken.None)); }
public virtual System.Threading.Tasks.Task RemoveLoginAsync(ModelCodeFluent.Identity.User user, Microsoft.AspNet.Identity.UserLoginInfo userLoginInfo, System.Threading.CancellationToken cancellationToken) { cancellationToken.ThrowIfCancellationRequested(); this.ThrowIfDisposed(); if ((user == null)) { throw new System.ArgumentNullException("user"); } if ((userLoginInfo == null)) { throw new System.ArgumentNullException("userLoginInfo"); } System.Collections.Generic.IList <ModelCodeFluent.Identity.UserLogin> toDelete = new System.Collections.Generic.List <ModelCodeFluent.Identity.UserLogin>(); for (System.Collections.Generic.IEnumerator <ModelCodeFluent.Identity.UserLogin> enumerator = user.Logins.GetEnumerator(); enumerator.MoveNext(); ) { ModelCodeFluent.Identity.UserLogin userLogin = enumerator.Current; if ((string.Equals(userLogin.ProviderKey, userLoginInfo.ProviderKey, System.StringComparison.OrdinalIgnoreCase) && string.Equals(userLogin.ProviderName, userLoginInfo.LoginProvider, System.StringComparison.OrdinalIgnoreCase))) { toDelete.Add(userLogin); } } for (System.Collections.Generic.IEnumerator <ModelCodeFluent.Identity.UserLogin> enumerator1 = toDelete.GetEnumerator(); enumerator1.MoveNext(); ) { ModelCodeFluent.Identity.UserLogin userLogin = enumerator1.Current; userLogin.Delete(); user.Logins.Remove(userLogin); } return(System.Threading.Tasks.Task.FromResult(0)); }
public virtual System.Threading.Tasks.Task AddLoginAsync(ModelCodeFluent.Identity.User user, Microsoft.AspNet.Identity.UserLoginInfo userLoginInfo, System.Threading.CancellationToken cancellationToken) { cancellationToken.ThrowIfCancellationRequested(); this.ThrowIfDisposed(); if ((user == null)) { throw new System.ArgumentNullException("user"); } if ((userLoginInfo == null)) { throw new System.ArgumentNullException("userLoginInfo"); } ModelCodeFluent.Identity.UserLogin login = new ModelCodeFluent.Identity.UserLogin(); login.User = user; login.ProviderKey = userLoginInfo.ProviderKey; login.ProviderName = userLoginInfo.LoginProvider; login.Save(); user.Logins.Add(login); return(System.Threading.Tasks.Task.FromResult(0)); }
public System.Threading.Tasks.Task <SoftFluent.Samples.AspNetIdentity2.User> FindAsync(Microsoft.AspNet.Identity.UserLoginInfo login) { return(System.Threading.Tasks.Task.FromResult(SoftFluent.Samples.AspNetIdentity2.User.LoadByProviderKey(login.ProviderKey))); }
public System.Threading.Tasks.Task RemoveLoginAsync(SoftFluent.Samples.AspNetIdentity2.User user, Microsoft.AspNet.Identity.UserLoginInfo userLoginInfo) { return(System.Threading.Tasks.Task.FromResult(SoftFluent.Samples.AspNetIdentity2.LoginCollection.DeleteByUserAndProviderKey(user, userLoginInfo.ProviderKey))); }
public System.Threading.Tasks.Task AddLoginAsync(SoftFluent.Samples.AspNetIdentity2.User user, Microsoft.AspNet.Identity.UserLoginInfo userLoginInfo) { SoftFluent.Samples.AspNetIdentity2.Login login = new SoftFluent.Samples.AspNetIdentity2.Login(); login.User = user; login.ProviderKey = userLoginInfo.ProviderKey; login.ProviderName = userLoginInfo.LoginProvider; login.Save(); return(System.Threading.Tasks.Task.FromResult(0)); }
protected virtual async Task<AuthenticationResult> ProcessNewExternalAccountAsync(string provider, string providerId, IEnumerable<Claim> claims) { var user = await TryGetExistingUserFromExternalProviderClaimsAsync(provider, claims); if (user == null) { user = await InstantiateNewUserFromExternalProviderAsync(provider, providerId, claims); if (user == null) throw new InvalidOperationException("CreateNewAccountFromExternalProvider returned null"); var createResult = await manager.CreateAsync(user); if (!createResult.Succeeded) { return new AuthenticationResult(createResult.Errors.First()); } } var externalLogin = new Microsoft.AspNet.Identity.UserLoginInfo(provider, providerId); var addExternalResult = await manager.AddLoginAsync(user.Id, externalLogin); if (!addExternalResult.Succeeded) { return new AuthenticationResult(addExternalResult.Errors.First()); } var result = await AccountCreatedFromExternalProviderAsync(user.Id, provider, providerId, claims); if (result != null) return result; return await SignInFromExternalProviderAsync(user.Id, provider); }