yavsc/Yavsc/AuthorizationHandlers/BillViewHandlers.cs

22 lines
756 B
C#
Raw Normal View History

2017-01-19 12:59:49 +01:00
using System.Security.Claims;
using Microsoft.AspNet.Authorization;
namespace Yavsc.ViewModels.Auth.Handlers
{
2017-06-08 00:26:29 +02:00
using Billing;
public class BillViewHandler : AuthorizationHandler<ViewRequirement, IBillable>
2017-01-19 12:59:49 +01:00
{
2017-06-08 00:26:29 +02:00
protected override void Handle(AuthorizationContext context, ViewRequirement requirement, IBillable resource)
2017-01-19 12:59:49 +01:00
{
if (context.User.IsInRole("FrontOffice"))
context.Succeed(requirement);
else if (context.User.Identity.IsAuthenticated)
if (resource.ClientId == context.User.GetUserId())
context.Succeed(requirement);
else if (resource.PerformerId == context.User.GetUserId())
context.Succeed(requirement);
}
}
}