Browse Source

Add serviceProvider to ClaimsIdentityContext

pull/7165/head
liangshiwei 6 years ago
parent
commit
9476b85018
  1. 10
      framework/src/Volo.Abp.Security/Volo/Abp/Security/Claims/ClaimsIdentityContext.cs
  2. 4
      modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpUserClaimsPrincipalFactory.cs

10
framework/src/Volo.Abp.Security/Volo/Abp/Security/Claims/ClaimsIdentityContext.cs

@ -1,4 +1,5 @@
using System.Security.Claims;
using System;
using System.Security.Claims;
namespace Volo.Abp.Security.Claims
{
@ -6,9 +7,14 @@ namespace Volo.Abp.Security.Claims
{
public ClaimsIdentity ClaimsIdentity { get; }
public ClaimsIdentityContext(ClaimsIdentity claimsIdentity)
public IServiceProvider ServiceProvider { get; }
public ClaimsIdentityContext(
ClaimsIdentity claimsIdentity,
IServiceProvider serviceProvider)
{
ClaimsIdentity = claimsIdentity;
ServiceProvider = serviceProvider;
}
}
}

4
modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpUserClaimsPrincipalFactory.cs

@ -71,10 +71,10 @@ namespace Volo.Abp.Identity
identity.AddIfNotContains(new Claim(AbpClaimTypes.EmailVerified, user.EmailConfirmed.ToString()));
var context = new ClaimsIdentityContext(identity);
using (var scope = ServiceScopeFactory.CreateScope())
{
var context = new ClaimsIdentityContext(identity, scope.ServiceProvider);
foreach (var contributorType in ClaimOptions.ClaimsIdentityContributors)
{
var contributor = (IClaimsIdentityContributor) scope.ServiceProvider.GetRequiredService(contributorType);

Loading…
Cancel
Save