Browse Source

Merge pull request #12651 from abpframework/maliming-patch-1

Update OpenIddictClaimsPrincipalContributor.cs
pull/12663/head
liangshiwei 4 years ago
committed by GitHub
parent
commit
0a8db0b202
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 8
      modules/openiddict/src/Volo.Abp.OpenIddict.AspNetCore/Volo/Abp/OpenIddict/OpenIddictClaimsPrincipalContributor.cs

8
modules/openiddict/src/Volo.Abp.OpenIddict.AspNetCore/Volo/Abp/OpenIddict/OpenIddictClaimsPrincipalContributor.cs

@ -1,4 +1,4 @@
using System.Linq;
using System.Linq;
using System.Security.Claims;
using System.Security.Principal;
using System.Threading.Tasks;
@ -6,15 +6,12 @@ using Microsoft.AspNetCore.Identity;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Options;
using Microsoft.IdentityModel.JsonWebTokens;
using OpenIddict.Abstractions;
using Volo.Abp.DependencyInjection;
using Volo.Abp.Security.Claims;
namespace Volo.Abp.OpenIddict;
/// <summary>
/// https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/issues/1627
/// https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/blob/05e02b5e0383be40e45c667c12f6667d38e33fcc/src/System.IdentityModel.Tokens.Jwt/ClaimTypeMapping.cs#L52
/// </summary>
public class OpenIddictClaimsPrincipalContributor : IAbpClaimsPrincipalContributor, ITransientDependency
{
public Task ContributeAsync(AbpClaimsPrincipalContributorContext context)
@ -26,6 +23,7 @@ public class OpenIddictClaimsPrincipalContributor : IAbpClaimsPrincipalContribut
var usernameClaim = identity.FindFirst(options.ClaimsIdentity.UserNameClaimType);
if (usernameClaim != null)
{
identity.AddIfNotContains(new Claim(OpenIddictConstants.Claims.PreferredUsername, usernameClaim.Value));
identity.AddIfNotContains(new Claim(JwtRegisteredClaimNames.UniqueName, usernameClaim.Value));
}
}

Loading…
Cancel
Save