using Hangfire.Dashboard;
namespace Dpz.Core.Web.Jobs.Security;
/// <summary>
/// Hangfire Dashboard 授权过滤器,检查用户是否拥有 System 权限。
/// </summary>
public class HangfireAuthorizationFilter : IDashboardAuthorizationFilter
{
public bool Authorize(DashboardContext context)
{
var httpContext = context.GetHttpContext();
if (httpContext == null)
{
return false;
}
if (httpContext.User.Identity?.IsAuthenticated != true)
{
return false;
}
return HangfireDashboardPermission.HasPermission(
httpContext.User,
EnumLibrary.Permissions.System
);
}
}
AI 正在分析代码…
评论加载中...