AGSSbackend/AGSS/Services/CurrentUserService.cs

25 lines
656 B
C#
Raw Normal View History

2025-07-15 22:21:06 +08:00
// 用于获取当前用户信息
using System.Security.Claims;
public interface ICurrentUserService
{
Guid UserId { get; }
bool IsAdmin { get; }
}
public class CurrentUserService : ICurrentUserService
{
private readonly IHttpContextAccessor _httpContextAccessor;
public CurrentUserService(IHttpContextAccessor httpContextAccessor)
{
_httpContextAccessor = httpContextAccessor;
}
public Guid UserId =>
Guid.Parse(_httpContextAccessor.HttpContext?.User?.FindFirst(ClaimTypes.NameIdentifier)?.Value);
public bool IsAdmin =>
_httpContextAccessor.HttpContext?.User?.IsInRole("luolan") ?? false;
}