From 2811de7a708fc6ce5461726a43f2a58824782632 Mon Sep 17 00:00:00 2001 From: maliming <6908465+maliming@users.noreply.github.com> Date: Mon, 7 Sep 2020 16:11:12 +0800 Subject: [PATCH 1/5] Add more property to user claims. --- .../CurrentUserDto.cs | 10 ++++ .../AbpApplicationConfigurationAppService.cs | 5 ++ .../Volo/Abp/Security/Claims/AbpClaimTypes.cs | 56 ++++++++++++------- .../Volo/Abp/Users/CurrentUser.cs | 6 +- .../Volo/Abp/Users/ICurrentUser.cs | 8 ++- .../Abp/Identity/AbpIdentityDomainModule.cs | 15 ++++- .../Identity/AbpUserClaimsPrincipalFactory.cs | 38 ++++++++++--- .../Abp/Identity/ClaimsIdentityExtensions.cs | 21 +++++++ 8 files changed, 126 insertions(+), 33 deletions(-) create mode 100644 modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/ClaimsIdentityExtensions.cs diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/CurrentUserDto.cs b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/CurrentUserDto.cs index ce08bebe87..5d1f6d8414 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/CurrentUserDto.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc.Contracts/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/CurrentUserDto.cs @@ -13,8 +13,18 @@ namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations public string UserName { get; set; } + public string Name { get; set; } + + public string SurName { get; set; } + public string Email { get; set; } + public bool EmailVerified { get; set; } + + public string PhoneNumber { get; set; } + + public bool PhoneNumberVerified { get; set; } + public string[] Roles { get; set; } } } diff --git a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/AbpApplicationConfigurationAppService.cs b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/AbpApplicationConfigurationAppService.cs index 54815d6ff5..89bf3e7cfc 100644 --- a/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/AbpApplicationConfigurationAppService.cs +++ b/framework/src/Volo.Abp.AspNetCore.Mvc/Volo/Abp/AspNetCore/Mvc/ApplicationConfigurations/AbpApplicationConfigurationAppService.cs @@ -117,7 +117,12 @@ namespace Volo.Abp.AspNetCore.Mvc.ApplicationConfigurations Id = _currentUser.Id, TenantId = _currentUser.TenantId, UserName = _currentUser.UserName, + SurName = _currentUser.SurName, + Name = _currentUser.Name, Email = _currentUser.Email, + EmailVerified = _currentUser.EmailVerified, + PhoneNumber = _currentUser.PhoneNumber, + PhoneNumberVerified = _currentUser.PhoneNumberVerified, Roles = _currentUser.Roles }; } diff --git a/framework/src/Volo.Abp.Security/Volo/Abp/Security/Claims/AbpClaimTypes.cs b/framework/src/Volo.Abp.Security/Volo/Abp/Security/Claims/AbpClaimTypes.cs index d0b883e4f3..a797b360ee 100644 --- a/framework/src/Volo.Abp.Security/Volo/Abp/Security/Claims/AbpClaimTypes.cs +++ b/framework/src/Volo.Abp.Security/Volo/Abp/Security/Claims/AbpClaimTypes.cs @@ -8,55 +8,71 @@ namespace Volo.Abp.Security.Claims /// public static class AbpClaimTypes { + public const string ClaimTypeNamespace = "abp_"; + /// - /// Default: + /// Default: abp_username /// - public static string UserName { get; set; } = ClaimTypes.Name; + public static string UserName { get; set; } = ClaimTypeNamespace + "username"; /// - /// Default: + /// Default: abp_name /// - public static string UserId { get; set; } = ClaimTypes.NameIdentifier; + public static string Name { get; set; } = ClaimTypeNamespace + "name"; /// - /// Default: + /// Default: abp_surname /// - public static string Role { get; set; } = ClaimTypes.Role; + public static string SurName { get; set; } = ClaimTypeNamespace + "surname"; /// - /// Default: + /// Default: abp_user_id /// - public static string Email { get; set; } = ClaimTypes.Email; + public static string UserId { get; set; } = ClaimTypeNamespace + "user_id"; /// - /// Default: "email_verified". + /// Default: abp_role /// - public static string EmailVerified { get; set; } = "email_verified"; + public static string Role { get; set; } = ClaimTypeNamespace + "role"; /// - /// Default: "phone_number". + /// Default: abp_security_stamp /// - public static string PhoneNumber { get; set; } = "phone_number"; + public static string SecurityStamp { get; set; } = ClaimTypeNamespace + "security_stamp"; /// - /// Default: "phone_number_verified". + /// Default: abp_email /// - public static string PhoneNumberVerified { get; set; } = "phone_number_verified"; + public static string Email { get; set; } = ClaimTypeNamespace + "email"; /// - /// Default: "tenantid". + /// Default: abp_email_verified /// - public static string TenantId { get; set; } = "tenantid"; + public static string EmailVerified { get; set; } = ClaimTypeNamespace + "email_verified"; + /// + /// Default: abp_phone_number + /// + public static string PhoneNumber { get; set; } = ClaimTypeNamespace + "phone_number"; + + /// + /// Default: abp_phone_number_verified + /// + public static string PhoneNumberVerified { get; set; } = ClaimTypeNamespace + "phone_number_verified"; + + /// + /// Default: abp_tenant_id + /// + public static string TenantId { get; set; } = ClaimTypeNamespace + "tenant_id"; /// - /// Default: "editionid". + /// Default: abp_edition_id /// - public static string EditionId { get; set; } = "editionid"; + public static string EditionId { get; set; } = ClaimTypeNamespace + "edition_id"; /// - /// Default: "client_id". + /// Default: abp_client_id /// - public static string ClientId { get; set; } = "client_id"; + public static string ClientId { get; set; } = ClaimTypeNamespace + "client_id"; } } diff --git a/framework/src/Volo.Abp.Security/Volo/Abp/Users/CurrentUser.cs b/framework/src/Volo.Abp.Security/Volo/Abp/Users/CurrentUser.cs index 487274860f..e769b9ec11 100644 --- a/framework/src/Volo.Abp.Security/Volo/Abp/Users/CurrentUser.cs +++ b/framework/src/Volo.Abp.Security/Volo/Abp/Users/CurrentUser.cs @@ -17,6 +17,10 @@ namespace Volo.Abp.Users public virtual string UserName => this.FindClaimValue(AbpClaimTypes.UserName); + public virtual string Name => this.FindClaimValue(AbpClaimTypes.Name); + + public virtual string SurName => this.FindClaimValue(AbpClaimTypes.SurName); + public virtual string PhoneNumber => this.FindClaimValue(AbpClaimTypes.PhoneNumber); public virtual bool PhoneNumberVerified => string.Equals(this.FindClaimValue(AbpClaimTypes.PhoneNumberVerified), "true", StringComparison.InvariantCultureIgnoreCase); @@ -56,4 +60,4 @@ namespace Volo.Abp.Users return FindClaims(AbpClaimTypes.Role).Any(c => c.Value == roleName); } } -} \ No newline at end of file +} diff --git a/framework/src/Volo.Abp.Security/Volo/Abp/Users/ICurrentUser.cs b/framework/src/Volo.Abp.Security/Volo/Abp/Users/ICurrentUser.cs index 18613406d8..528f176c94 100644 --- a/framework/src/Volo.Abp.Security/Volo/Abp/Users/ICurrentUser.cs +++ b/framework/src/Volo.Abp.Security/Volo/Abp/Users/ICurrentUser.cs @@ -14,9 +14,15 @@ namespace Volo.Abp.Users [CanBeNull] string UserName { get; } + [CanBeNull] + string Name { get; } + + [CanBeNull] + string SurName { get; } + [CanBeNull] string PhoneNumber { get; } - + bool PhoneNumberVerified { get; } [CanBeNull] diff --git a/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpIdentityDomainModule.cs b/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpIdentityDomainModule.cs index d21e945f60..685f66a9ea 100644 --- a/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpIdentityDomainModule.cs +++ b/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpIdentityDomainModule.cs @@ -8,6 +8,7 @@ using Volo.Abp.Domain.Entities.Events.Distributed; using Volo.Abp.Modularity; using Volo.Abp.ObjectExtending; using Volo.Abp.ObjectExtending.Modularity; +using Volo.Abp.Security.Claims; using Volo.Abp.Users; namespace Volo.Abp.Identity @@ -36,7 +37,7 @@ namespace Volo.Abp.Identity options.EtoMappings.Add(typeof(AbpIdentityDomainModule)); options.EtoMappings.Add(typeof(AbpIdentityDomainModule)); }); - + var identityBuilder = context.Services.AddAbpIdentity(options => { options.User.RequireUniqueEmail = true; @@ -45,6 +46,14 @@ namespace Volo.Abp.Identity context.Services.AddObjectAccessor(identityBuilder); context.Services.ExecutePreConfiguredActions(identityBuilder); + Configure(options => + { + options.ClaimsIdentity.UserIdClaimType = AbpClaimTypes.UserId; + options.ClaimsIdentity.UserNameClaimType = AbpClaimTypes.UserName; + options.ClaimsIdentity.RoleClaimType = AbpClaimTypes.Role; + options.ClaimsIdentity.SecurityStampClaimType = AbpClaimTypes.SecurityStamp; + }); + AddAbpIdentityOptionsFactory(context.Services); } @@ -67,7 +76,7 @@ namespace Volo.Abp.Identity IdentityModuleExtensionConsts.EntityNames.ClaimType, typeof(IdentityClaimType) ); - + ModuleExtensionConfigurationHelper.ApplyEntityConfigurationToEntity( IdentityModuleExtensionConsts.ModuleName, IdentityModuleExtensionConsts.EntityNames.OrganizationUnit, @@ -81,4 +90,4 @@ namespace Volo.Abp.Identity services.Replace(ServiceDescriptor.Scoped, OptionsManager>()); } } -} \ No newline at end of file +} diff --git a/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpUserClaimsPrincipalFactory.cs b/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpUserClaimsPrincipalFactory.cs index 8db2b95942..c9e266bf23 100644 --- a/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpUserClaimsPrincipalFactory.cs +++ b/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpUserClaimsPrincipalFactory.cs @@ -1,4 +1,5 @@ -using System.Linq; +using System; +using System.Linq; using System.Security.Claims; using System.Threading.Tasks; using Microsoft.AspNetCore.Identity; @@ -6,6 +7,7 @@ using Microsoft.Extensions.Options; using Volo.Abp.DependencyInjection; using Volo.Abp.Security.Claims; using Volo.Abp.Uow; +using Volo.Abp.Users; namespace Volo.Abp.Identity { @@ -13,11 +15,11 @@ namespace Volo.Abp.Identity { public AbpUserClaimsPrincipalFactory( UserManager userManager, - RoleManager roleManager, - IOptions options) + RoleManager roleManager, + IOptions options) : base( - userManager, - roleManager, + userManager, + roleManager, options) { } @@ -26,14 +28,34 @@ namespace Volo.Abp.Identity public override async Task CreateAsync(IdentityUser user) { var principal = await base.CreateAsync(user); + var identity = principal.Identities.First(); if (user.TenantId.HasValue) { - principal.Identities - .First() - .AddClaim(new Claim(AbpClaimTypes.TenantId, user.TenantId.ToString())); + identity.AddIfNotContains(new Claim(AbpClaimTypes.TenantId, user.TenantId.ToString())); } + if (!user.Name.IsNullOrWhiteSpace()) + { + identity.AddIfNotContains(new Claim(AbpClaimTypes.Name, user.Name)); + } + if (!user.Surname.IsNullOrWhiteSpace()) + { + identity.AddIfNotContains(new Claim(AbpClaimTypes.SurName, user.Surname)); + } + + if (!user.PhoneNumber.IsNullOrWhiteSpace()) + { + identity.AddIfNotContains(new Claim(AbpClaimTypes.PhoneNumber, user.PhoneNumber)); + } + identity.AddIfNotContains(new Claim(AbpClaimTypes.PhoneNumberVerified, user.PhoneNumberConfirmed.ToString())); + + if (!user.Email.IsNullOrWhiteSpace()) + { + identity.AddIfNotContains(new Claim(AbpClaimTypes.Email, user.Email)); + } + identity.AddIfNotContains(new Claim(AbpClaimTypes.EmailVerified, user.EmailConfirmed.ToString())); + return principal; } } diff --git a/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/ClaimsIdentityExtensions.cs b/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/ClaimsIdentityExtensions.cs new file mode 100644 index 0000000000..156f092f9e --- /dev/null +++ b/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/ClaimsIdentityExtensions.cs @@ -0,0 +1,21 @@ +using System; +using System.Linq; +using System.Security.Claims; + +namespace Volo.Abp.Identity +{ + public static class ClaimsIdentityExtensions + { + public static ClaimsIdentity AddIfNotContains(this ClaimsIdentity claimsIdentity, Claim claim) + { + if (!claimsIdentity.Claims.Any(existClaim => + existClaim != null && + string.Equals(existClaim.Type, claim.Type, StringComparison.OrdinalIgnoreCase))) + { + claimsIdentity.AddClaim(claim); + } + + return claimsIdentity; + } + } +} From 2c6cd37af2f7e7a70565e4f91f971fd281074e70 Mon Sep 17 00:00:00 2001 From: maliming <6908465+maliming@users.noreply.github.com> Date: Mon, 7 Sep 2020 16:54:00 +0800 Subject: [PATCH 2/5] Fix unit test. --- .../Volo/Abp/Authorization/AuthorizationTestBase.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/framework/test/Volo.Abp.Authorization.Tests/Volo/Abp/Authorization/AuthorizationTestBase.cs b/framework/test/Volo.Abp.Authorization.Tests/Volo/Abp/Authorization/AuthorizationTestBase.cs index 5cf9976e46..89f45600f4 100644 --- a/framework/test/Volo.Abp.Authorization.Tests/Volo/Abp/Authorization/AuthorizationTestBase.cs +++ b/framework/test/Volo.Abp.Authorization.Tests/Volo/Abp/Authorization/AuthorizationTestBase.cs @@ -23,7 +23,7 @@ namespace Volo.Abp.Authorization new Claim(AbpClaimTypes.Role, "MyRole") }; - var identity = new ClaimsIdentity(claims); + var identity = new ClaimsIdentity(claims,null, AbpClaimTypes.UserName, AbpClaimTypes.Role); var claimsPrincipal = new ClaimsPrincipal(identity); var principalAccessor = Substitute.For(); principalAccessor.Principal.Returns(ci => claimsPrincipal); From 9b44c00c1afd16b1499fa3d196858416bbc5987f Mon Sep 17 00:00:00 2001 From: maliming <6908465+maliming@users.noreply.github.com> Date: Tue, 8 Sep 2020 21:27:58 +0800 Subject: [PATCH 3/5] Use standard name as abp claim type. --- .../Volo/Abp/Security/Claims/AbpClaimTypes.cs | 54 +++++++++---------- .../Authorization/AuthorizationTestBase.cs | 2 +- 2 files changed, 27 insertions(+), 29 deletions(-) diff --git a/framework/src/Volo.Abp.Security/Volo/Abp/Security/Claims/AbpClaimTypes.cs b/framework/src/Volo.Abp.Security/Volo/Abp/Security/Claims/AbpClaimTypes.cs index a797b360ee..e829ecddf3 100644 --- a/framework/src/Volo.Abp.Security/Volo/Abp/Security/Claims/AbpClaimTypes.cs +++ b/framework/src/Volo.Abp.Security/Volo/Abp/Security/Claims/AbpClaimTypes.cs @@ -8,71 +8,69 @@ namespace Volo.Abp.Security.Claims /// public static class AbpClaimTypes { - public const string ClaimTypeNamespace = "abp_"; - /// - /// Default: abp_username + /// Default: /// - public static string UserName { get; set; } = ClaimTypeNamespace + "username"; + public static string UserName { get; set; } = ClaimTypes.Name; /// - /// Default: abp_name + /// Default: /// - public static string Name { get; set; } = ClaimTypeNamespace + "name"; + public static string Name { get; set; } = ClaimTypes.GivenName; /// - /// Default: abp_surname + /// Default: /// - public static string SurName { get; set; } = ClaimTypeNamespace + "surname"; + public static string SurName { get; set; } = ClaimTypes.Surname; /// - /// Default: abp_user_id + /// Default: security_stamp /// - public static string UserId { get; set; } = ClaimTypeNamespace + "user_id"; + public static string SecurityStamp { get; set; } = "security_stamp"; /// - /// Default: abp_role + /// Default: /// - public static string Role { get; set; } = ClaimTypeNamespace + "role"; + public static string UserId { get; set; } = ClaimTypes.NameIdentifier; /// - /// Default: abp_security_stamp + /// Default: /// - public static string SecurityStamp { get; set; } = ClaimTypeNamespace + "security_stamp"; + public static string Role { get; set; } = ClaimTypes.Role; /// - /// Default: abp_email + /// Default: /// - public static string Email { get; set; } = ClaimTypeNamespace + "email"; + public static string Email { get; set; } = ClaimTypes.Email; /// - /// Default: abp_email_verified + /// Default: "email_verified". /// - public static string EmailVerified { get; set; } = ClaimTypeNamespace + "email_verified"; + public static string EmailVerified { get; set; } = "email_verified"; /// - /// Default: abp_phone_number + /// Default: "phone_number". /// - public static string PhoneNumber { get; set; } = ClaimTypeNamespace + "phone_number"; + public static string PhoneNumber { get; set; } = "phone_number"; /// - /// Default: abp_phone_number_verified + /// Default: "phone_number_verified". /// - public static string PhoneNumberVerified { get; set; } = ClaimTypeNamespace + "phone_number_verified"; + public static string PhoneNumberVerified { get; set; } = "phone_number_verified"; /// - /// Default: abp_tenant_id + /// Default: "tenantid". /// - public static string TenantId { get; set; } = ClaimTypeNamespace + "tenant_id"; + public static string TenantId { get; set; } = "tenant_id"; /// - /// Default: abp_edition_id + /// Default: "editionid". /// - public static string EditionId { get; set; } = ClaimTypeNamespace + "edition_id"; + public static string EditionId { get; set; } = "edition_id"; /// - /// Default: abp_client_id + /// Default: "client_id". /// - public static string ClientId { get; set; } = ClaimTypeNamespace + "client_id"; + public static string ClientId { get; set; } = "client_id"; } } diff --git a/framework/test/Volo.Abp.Authorization.Tests/Volo/Abp/Authorization/AuthorizationTestBase.cs b/framework/test/Volo.Abp.Authorization.Tests/Volo/Abp/Authorization/AuthorizationTestBase.cs index 89f45600f4..5cf9976e46 100644 --- a/framework/test/Volo.Abp.Authorization.Tests/Volo/Abp/Authorization/AuthorizationTestBase.cs +++ b/framework/test/Volo.Abp.Authorization.Tests/Volo/Abp/Authorization/AuthorizationTestBase.cs @@ -23,7 +23,7 @@ namespace Volo.Abp.Authorization new Claim(AbpClaimTypes.Role, "MyRole") }; - var identity = new ClaimsIdentity(claims,null, AbpClaimTypes.UserName, AbpClaimTypes.Role); + var identity = new ClaimsIdentity(claims); var claimsPrincipal = new ClaimsPrincipal(identity); var principalAccessor = Substitute.For(); principalAccessor.Principal.Returns(ci => claimsPrincipal); From 69f6caca9171604549da09235883784d2a23f563 Mon Sep 17 00:00:00 2001 From: maliming <6908465+maliming@users.noreply.github.com> Date: Tue, 8 Sep 2020 21:29:32 +0800 Subject: [PATCH 4/5] Update AbpClaimTypes.cs --- .../Volo/Abp/Security/Claims/AbpClaimTypes.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/framework/src/Volo.Abp.Security/Volo/Abp/Security/Claims/AbpClaimTypes.cs b/framework/src/Volo.Abp.Security/Volo/Abp/Security/Claims/AbpClaimTypes.cs index e829ecddf3..6d6672ec2b 100644 --- a/framework/src/Volo.Abp.Security/Volo/Abp/Security/Claims/AbpClaimTypes.cs +++ b/framework/src/Volo.Abp.Security/Volo/Abp/Security/Claims/AbpClaimTypes.cs @@ -59,12 +59,12 @@ namespace Volo.Abp.Security.Claims public static string PhoneNumberVerified { get; set; } = "phone_number_verified"; /// - /// Default: "tenantid". + /// Default: "tenant_id". /// public static string TenantId { get; set; } = "tenant_id"; /// - /// Default: "editionid". + /// Default: "edition_id". /// public static string EditionId { get; set; } = "edition_id"; From c0789c263c26f408fd1a2b97b1508826f2c020fc Mon Sep 17 00:00:00 2001 From: maliming <6908465+maliming@users.noreply.github.com> Date: Wed, 9 Sep 2020 20:09:31 +0800 Subject: [PATCH 5/5] Revert renaming claim name. --- .../Volo/Abp/Security/Claims/AbpClaimTypes.cs | 13 ++++--------- .../Volo/Abp/Identity/AbpIdentityDomainModule.cs | 1 - 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/framework/src/Volo.Abp.Security/Volo/Abp/Security/Claims/AbpClaimTypes.cs b/framework/src/Volo.Abp.Security/Volo/Abp/Security/Claims/AbpClaimTypes.cs index 6d6672ec2b..271d5d3d94 100644 --- a/framework/src/Volo.Abp.Security/Volo/Abp/Security/Claims/AbpClaimTypes.cs +++ b/framework/src/Volo.Abp.Security/Volo/Abp/Security/Claims/AbpClaimTypes.cs @@ -23,11 +23,6 @@ namespace Volo.Abp.Security.Claims /// public static string SurName { get; set; } = ClaimTypes.Surname; - /// - /// Default: security_stamp - /// - public static string SecurityStamp { get; set; } = "security_stamp"; - /// /// Default: /// @@ -59,14 +54,14 @@ namespace Volo.Abp.Security.Claims public static string PhoneNumberVerified { get; set; } = "phone_number_verified"; /// - /// Default: "tenant_id". + /// Default: "tenantid". /// - public static string TenantId { get; set; } = "tenant_id"; + public static string TenantId { get; set; } = "tenantid"; /// - /// Default: "edition_id". + /// Default: "editionid". /// - public static string EditionId { get; set; } = "edition_id"; + public static string EditionId { get; set; } = "editionid"; /// /// Default: "client_id". diff --git a/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpIdentityDomainModule.cs b/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpIdentityDomainModule.cs index 685f66a9ea..6feddd125b 100644 --- a/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpIdentityDomainModule.cs +++ b/modules/identity/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/AbpIdentityDomainModule.cs @@ -51,7 +51,6 @@ namespace Volo.Abp.Identity options.ClaimsIdentity.UserIdClaimType = AbpClaimTypes.UserId; options.ClaimsIdentity.UserNameClaimType = AbpClaimTypes.UserName; options.ClaimsIdentity.RoleClaimType = AbpClaimTypes.Role; - options.ClaimsIdentity.SecurityStampClaimType = AbpClaimTypes.SecurityStamp; }); AddAbpIdentityOptionsFactory(context.Services);