From 6361874bd61beeefb912ca8658014133ae34926a Mon Sep 17 00:00:00 2001 From: BruceHunter Date: Fri, 18 Mar 2016 19:15:49 -0400 Subject: [PATCH 1/2] Exposed UserManager methods GeneratePasswordResetTokenAsync, FindByEmailAsync and FindByNameAsync. --- .../AspNetIdentity/AspNetIdentityManagerService.cs | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/source/AspNetIdentity/AspNetIdentityManagerService.cs b/source/AspNetIdentity/AspNetIdentityManagerService.cs index 0dc6b4c..fbaef0c 100644 --- a/source/AspNetIdentity/AspNetIdentityManagerService.cs +++ b/source/AspNetIdentity/AspNetIdentityManagerService.cs @@ -155,7 +155,18 @@ object ParseUInt32(string sub) if (!UInt32.TryParse(sub, out key)) return 0; return key; } - + public virtual Task GeneratePasswordResetTokenAsync(TUserKey userId) + { + return userManager.GeneratePasswordResetTokenAsync(userId); + } + public virtual Task FindByEmailAsync(string email) + { + return userManager.FindByEmailAsync(email); + } + public virtual Task FindByNameAsync(string userName) + { + return userManager.FindByNameAsync(userName); + } public virtual IdentityManagerMetadata GetStandardMetadata(bool includeAccountProperties = true) { var update = new List(); @@ -216,7 +227,6 @@ public virtual IdentityManagerMetadata GetStandardMetadata(bool includeAccountPr }; return meta; } - public virtual PropertyMetadata GetMetadataForClaim(string type, string name = null, PropertyDataType dataType = PropertyDataType.String, bool required = false) { return PropertyMetadata.FromFunctions(type, GetForClaim(type), SetForClaim(type), name, dataType, required); From 7849a9eccb068843b3cd0ce5c5f2e04b606db9c1 Mon Sep 17 00:00:00 2001 From: BruceHunter Date: Fri, 18 Mar 2016 21:29:55 -0400 Subject: [PATCH 2/2] - Exposed UserManager method ResetPasswordAsync wrapped by AspNetIdentityManagerServer. - Added ResetPasswordAsync to IIdentityManagerService interface. --- .../AspNetIdentity/AspNetIdentityManagerService.cs | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/source/AspNetIdentity/AspNetIdentityManagerService.cs b/source/AspNetIdentity/AspNetIdentityManagerService.cs index fbaef0c..03f1983 100644 --- a/source/AspNetIdentity/AspNetIdentityManagerService.cs +++ b/source/AspNetIdentity/AspNetIdentityManagerService.cs @@ -259,7 +259,16 @@ public virtual Func SetForClaim(string typ return IdentityManagerResult.Success; }; } - + public virtual async Task ResetPasswordAsync(string subject, string token, string newPassword) + { + TUserKey key = ConvertUserSubjectToKey(subject); + var result = await this.userManager.ResetPasswordAsync(key, token, newPassword); + if (!result.Succeeded) + { + return new IdentityManagerResult(result.Errors.First()); + } + return IdentityManagerResult.Success; + } public virtual IdentityManagerResult SetPassword(TUser user, string password) { var token = this.userManager.GeneratePasswordResetToken(user.Id); @@ -270,7 +279,6 @@ public virtual IdentityManagerResult SetPassword(TUser user, string password) } return IdentityManagerResult.Success; } - public virtual string GetEmail(TUser user) { return userManager.GetEmail(user.Id); @@ -295,7 +303,6 @@ public virtual IdentityManagerResult SetEmail(TUser user, string email) return IdentityManagerResult.Success; } - public virtual string GetPhone(TUser user) { return userManager.GetPhoneNumber(user.Id);