forked from xiongyuxing/tiku-backend.net
24 lines
860 B
C#
24 lines
860 B
C#
using System.Security.Claims;
|
|
|
|
namespace Tiku.Application.Security;
|
|
|
|
public sealed class CurrentUser : ICurrentUser
|
|
{
|
|
public Guid? UserId { get; private set; }
|
|
public Guid? SessionId { get; private set; }
|
|
public string? Phone { get; private set; }
|
|
public string? Email { get; private set; }
|
|
public string? TenantRole { get; private set; }
|
|
public bool IsAuthenticated { get; private set; }
|
|
|
|
public void Load(ClaimsPrincipal principal)
|
|
{
|
|
IsAuthenticated = principal.Identity?.IsAuthenticated == true;
|
|
UserId = principal.FindGuid(TikuClaimTypes.UserId);
|
|
SessionId = principal.FindGuid(TikuClaimTypes.SessionId);
|
|
Phone = principal.FindValue(TikuClaimTypes.Phone);
|
|
Email = principal.FindValue(TikuClaimTypes.Email);
|
|
TenantRole = principal.FindValue(TikuClaimTypes.TenantRole);
|
|
}
|
|
}
|