diff --git a/framework/src/Volo.Abp.Security/System/Security/Principal/AbpClaimsIdentityExtensions.cs b/framework/src/Volo.Abp.Security/System/Security/Principal/AbpClaimsIdentityExtensions.cs
index 45d363a7a7..d6b7189542 100644
--- a/framework/src/Volo.Abp.Security/System/Security/Principal/AbpClaimsIdentityExtensions.cs
+++ b/framework/src/Volo.Abp.Security/System/Security/Principal/AbpClaimsIdentityExtensions.cs
@@ -91,5 +91,33 @@ namespace System.Security.Principal
return clientIdOrNull.Value;
}
+
+ public static string FindEditionId([NotNull] this ClaimsPrincipal principal)
+ {
+ Check.NotNull(principal, nameof(principal));
+
+ var editionIdOrNull = principal.Claims?.FirstOrDefault(c => c.Type == AbpClaimTypes.EditionId);
+ if (editionIdOrNull == null || editionIdOrNull.Value.IsNullOrWhiteSpace())
+ {
+ return null;
+ }
+
+ return editionIdOrNull.Value;
+ }
+
+ public static string FindEditionId([NotNull] this IIdentity identity)
+ {
+ Check.NotNull(identity, nameof(identity));
+
+ var claimsIdentity = identity as ClaimsIdentity;
+
+ var editionIdOrNull = claimsIdentity?.Claims?.FirstOrDefault(c => c.Type == AbpClaimTypes.EditionId);
+ if (editionIdOrNull == null || editionIdOrNull.Value.IsNullOrWhiteSpace())
+ {
+ return null;
+ }
+
+ return editionIdOrNull.Value;
+ }
}
}
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 b4abf97080..d0b883e4f3 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
@@ -44,10 +44,16 @@ namespace Volo.Abp.Security.Claims
public static string PhoneNumberVerified { get; set; } = "phone_number_verified";
///
- /// Default: "phone_number_verified".
+ /// Default: "tenantid".
///
public static string TenantId { get; set; } = "tenantid";
+
+ ///
+ /// Default: "editionid".
+ ///
+ public static string EditionId { get; set; } = "editionid";
+
///
/// Default: "client_id".
///