Files
FjpSite/FJPSite/Factories/UserClaimFactory.cs
T

24 lines
818 B
C#

using FJPSite.Data.Identity;
using Microsoft.AspNetCore.Identity;
using Microsoft.Extensions.Options;
using System.Security.Claims;
namespace FJPSite.Factories;
public class UserClaimFactory : UserClaimsPrincipalFactory<UserEntity, RoleEntity>
{
public UserClaimFactory(UserManager<UserEntity> userManager, RoleManager<RoleEntity> roleManager, IOptions<IdentityOptions> options) : base(userManager, roleManager, options)
{
}
public async override Task<ClaimsPrincipal> CreateAsync(UserEntity user)
{
var principal = await base.CreateAsync(user);
((ClaimsIdentity)principal.Identity).AddClaims(new[] {
new Claim(ClaimTypes.GivenName, user.Firstname),
new Claim(ClaimTypes.Surname, user.Surname)
});
return principal;
}
}