From 53b49c13557e070ca485911474a6f0d20d592674 Mon Sep 17 00:00:00 2001 From: maliming Date: Fri, 16 Apr 2021 09:49:19 +0800 Subject: [PATCH] Update Authorization.md --- docs/en/Authorization.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/docs/en/Authorization.md b/docs/en/Authorization.md index f9a0be5292..d41879cd9b 100644 --- a/docs/en/Authorization.md +++ b/docs/en/Authorization.md @@ -397,24 +397,24 @@ This is already done for the startup template integration tests. Abp abstracts the way that authentication creates `ClaimsPrincipal`. You can provide a custom `IAbpClaimsPrincipalContributor` to add additional claims. -Example of add `EditionId` of current tenant to user claims: +Example of add `SocialSecurityNumber` of current tenant to user claims: ```csharp -public class EditionClaimsPrincipalContributor : IAbpClaimsPrincipalContributor, ITransientDependency +public class SocialSecurityNumberClaimsPrincipalContributor : IAbpClaimsPrincipalContributor, ITransientDependency { public async Task ContributeAsync(AbpClaimsPrincipalContributorContext context) { var identity = context.ClaimsPrincipal.Identities.FirstOrDefault(); if (identity != null) { - var currentTenant = context.ServiceProvider.GetRequiredService(); - if (currentTenant.Id != null) + var currentUser = context.ServiceProvider.GetRequiredService(); + if (currentUser.Id.HasValue) { - var tenantRepository = context.ServiceProvider.GetRequiredService(); - var tenant = await tenantRepository.FindAsync(currentTenant.Id.Value); - if (tenant?.EditionId != null) + var userManager = context.ServiceProvider.GetRequiredService(); + var user = await userManager.GetByIdAsync(currentUser.Id.Value); + if (user?.SocialSecurityNumber != null) { - identity.AddOrReplace(new Claim(AbpClaimTypes.EditionId, tenant.EditionId.ToString())); + identity.AddOrReplace(new Claim("SocialSecurityNumber", user.SocialSecurityNumber)); } } } @@ -422,7 +422,7 @@ public class EditionClaimsPrincipalContributor : IAbpClaimsPrincipalContributor, } ``` -The `EditionClaimsPrincipalContributor` will participate in it when the `CreateAsync` method of `IAbpClaimsPrincipalFactory` is called. +The `SocialSecurityNumberClaimsPrincipalContributor` will participate in it when the `CreateAsync` method of `IAbpClaimsPrincipalFactory` is called. > The [Identity module](https://docs.abp.io/en/abp/latest/Modules/Identity) has integrated it.