logging improvements

This commit is contained in:
Shaun Walker
2019-10-22 18:16:04 -04:00
parent 135fe2d61a
commit e710fd61ca
6 changed files with 98 additions and 43 deletions

View File

@ -1,7 +1,8 @@
using System.Threading.Tasks;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Http;
using Oqtane.Infrastructure;
using Oqtane.Shared;
namespace Oqtane.Security
{
@ -9,11 +10,13 @@ namespace Oqtane.Security
{
private readonly IHttpContextAccessor HttpContextAccessor;
private readonly IUserPermissions UserPermissions;
private readonly ILogManager logger;
public PermissionHandler(IHttpContextAccessor HttpContextAccessor, IUserPermissions UserPermissions)
public PermissionHandler(IHttpContextAccessor HttpContextAccessor, IUserPermissions UserPermissions, ILogManager logger)
{
this.HttpContextAccessor = HttpContextAccessor;
this.UserPermissions = UserPermissions;
this.logger = logger;
}
protected override Task HandleRequirementAsync(AuthorizationHandlerContext context, PermissionRequirement requirement)
@ -27,6 +30,10 @@ namespace Oqtane.Security
{
context.Succeed(requirement);
}
else
{
logger.AddLog(this.GetType().FullName, LogLevel.Error, "User {User} Does Not Have {PermissionName} Permission For {EntityName}:{EntityId}", context.User, requirement.PermissionName, requirement.EntityName, EntityId);
}
}
return Task.CompletedTask;
}