forked from gongxuegit/tiku-backend.net
feat: add api security foundation
This commit is contained in:
21
Tiku.Application/Security/CurrentUser.cs
Normal file
21
Tiku.Application/Security/CurrentUser.cs
Normal file
@@ -0,0 +1,21 @@
|
||||
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 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);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user