public override async Task GetProfileDataAsync(ProfileDataRequestContext ctx) { var subject = ctx.Subject; var requestedClaimTypes = ctx.RequestedClaimTypes; if (subject == null) { throw new ArgumentNullException("subject"); } TKey key = ConvertSubjectToKey(subject.GetSubjectId()); var acct = await userManager.FindByIdAsync(key); if (acct == null) { throw new ArgumentException("Invalid subject identifier"); } var claims = await GetClaimsFromAccount(acct); if (requestedClaimTypes != null && requestedClaimTypes.Any()) { claims = claims.Where(x => requestedClaimTypes.Contains(x.Type)); } ctx.IssuedClaims = claims; }
public async Task TestMethod0() { IdentityTableContext<IdentityUser> context = new IdentityTableContext<IdentityUser>( new CloudStorageAccount(new StorageCredentials("c1azuretests", File.ReadAllText("C:\\dev\\storagekey.txt")), true)); var store = new UserStore<IdentityUser>(context); var mgr = new Microsoft.AspNet.Identity.UserManager<IdentityUser>(store); var obj = await mgr.FindAsync(new UserLoginInfo("google", "notfound")); Assert.IsNull(obj); var username="******"+Guid.NewGuid().ToString().Substring(0,5); var user = new IdentityUser(username); var result = await mgr.CreateAsync(user); Trace.WriteLine(string.Join(", ", result.Errors)); Assert.AreEqual(0, result.Errors.Count()); var userFromDb = await mgr.FindByIdAsync(user.Id); Assert.IsNotNull(userFromDb); }