AuthorizationInterceptor.cs 736 B

1234567891011121314151617181920212223
  1. using Castle.DynamicProxy;
  2. namespace Abp.Authorization
  3. {
  4. /// <summary>
  5. /// This class is used to intercept methods to make authorization if the method defined <see cref="AbpAuthorizeAttribute"/>.
  6. /// </summary>
  7. public class AuthorizationInterceptor : IInterceptor
  8. {
  9. private readonly IAuthorizationHelper _authorizationHelper;
  10. public AuthorizationInterceptor(IAuthorizationHelper authorizationHelper)
  11. {
  12. _authorizationHelper = authorizationHelper;
  13. }
  14. public void Intercept(IInvocation invocation)
  15. {
  16. _authorizationHelper.Authorize(invocation.MethodInvocationTarget, invocation.TargetType);
  17. invocation.Proceed();
  18. }
  19. }
  20. }