using System.Security.Claims; namespace Azaion.CommonSecurity.DTO; public class User { public Guid Id { get; set; } public string Email { get; set; } public RoleEnum Role { get; set; } public User(IEnumerable claims) { var claimDict = claims.ToDictionary(x => x.Type, x => x.Value); Id = Guid.Parse(claimDict[SecurityConstants.CLAIM_NAME_ID]); Email = claimDict[SecurityConstants.CLAIM_EMAIL]; if (!Enum.TryParse(claimDict[SecurityConstants.CLAIM_ROLE], out RoleEnum role)) role = RoleEnum.None; Role = role; } }