/// <summary>
        /// Creates a new instance of <see cref="DefaultAuthorizationService"/>.
        /// </summary>
        /// <param name="policyProvider">The <see cref="IAuthorizationPolicyProvider"/> used to provide policies.</param>
        /// <param name="handlers">The handlers used to fulfill <see cref="IAuthorizationRequirement"/>s.</param>
        /// <param name="logger">The logger used to log messages, warnings and errors.</param>
        /// <param name="contextFactory">The <see cref="IAuthorizationHandlerContextFactory"/> used to create the context to handle the authorization.</param>
        /// <param name="evaluator">The <see cref="IAuthorizationEvaluator"/> used to determine if authorzation was successful.</param>
        /// <param name="options">The <see cref="AuthorizationOptions"/> used.</param>
        public DefaultAuthorizationService(IAuthorizationPolicyProvider policyProvider, IAuthorizationHandlerProvider handlers, ILogger <DefaultAuthorizationService> logger, IAuthorizationHandlerContextFactory contextFactory, IAuthorizationEvaluator evaluator, IOptions <AuthorizationOptions> options)
        {
            if (options == null)
            {
                throw new ArgumentNullException(nameof(options));
            }
            if (policyProvider == null)
            {
                throw new ArgumentNullException(nameof(policyProvider));
            }
            if (handlers == null)
            {
                throw new ArgumentNullException(nameof(handlers));
            }
            if (logger == null)
            {
                throw new ArgumentNullException(nameof(logger));
            }
            if (contextFactory == null)
            {
                throw new ArgumentNullException(nameof(contextFactory));
            }
            if (evaluator == null)
            {
                throw new ArgumentNullException(nameof(evaluator));
            }

            _options        = options.Value;
            _handlers       = handlers;
            _policyProvider = policyProvider;
            _logger         = logger;
            _evaluator      = evaluator;
            _contextFactory = contextFactory;
        }
Exemple #2
0
        /// <summary>
        /// Creates a new instance of <see cref="DefaultAuthorizationService"/>.
        /// </summary>
        /// <param name="policyProvider">The <see cref="IAuthorizationPolicyProvider"/> used to provide policies.</param>
        /// <param name="handlers">The handlers used to fulfill <see cref="IAuthorizationRequirement"/>s.</param>
        /// <param name="logger">The logger used to log messages, warnings and errors.</param>
        /// <param name="contextFactory">The <see cref="IAuthorizationHandlerContextFactory"/> used to create the context to handle the authorization.</param>
        /// <param name="evaluator">The <see cref="IAuthorizationEvaluator"/> used to determine if authorzation was successful.</param>
        public DefaultAuthorizationService(IAuthorizationPolicyProvider policyProvider, IEnumerable <IAuthorizationHandler> handlers, ILogger logger, IAuthorizationHandlerContextFactory contextFactory, IAuthorizationEvaluator evaluator)
        {
            if (policyProvider == null)
            {
                throw new ArgumentNullException(nameof(policyProvider));
            }
            if (handlers == null)
            {
                throw new ArgumentNullException(nameof(handlers));
            }
            if (contextFactory == null)
            {
                throw new ArgumentNullException(nameof(contextFactory));
            }
            if (evaluator == null)
            {
                throw new ArgumentNullException(nameof(evaluator));
            }

            _handlers       = InitializeHandlers(handlers);
            _policyProvider = policyProvider;
            _logger         = logger ?? new DiagnosticsLoggerFactory().CreateDefaultLogger();
            _contextFactory = contextFactory;
            _evaluator      = evaluator;
        }
Exemple #3
0
 public HackSystemAuthorizationService(
     IAuthorizationPolicyProvider policyProvider,
     IAuthorizationHandlerProvider handlers,
     ILogger <DefaultAuthorizationService> logger,
     IAuthorizationHandlerContextFactory contextFactory,
     IAuthorizationEvaluator evaluator,
     IOptions <AuthorizationOptions> options)
     : base(policyProvider, handlers, logger, contextFactory, evaluator, options)
 {
     this.logger = logger;
 }
 public DefaultAuthorizationService(
     IAuthorizationPolicyProvider policyProvider,
     IAuthorizationHandlerProvider handlers,
     ILogger <Microsoft.AspNetCore.Authorization.DefaultAuthorizationService> logger,
     IAuthorizationHandlerContextFactory contextFactory,
     IAuthorizationEvaluator evaluator,
     IOptions <Microsoft.AspNetCore.Authorization.AuthorizationOptions> options,
     IHttpContextPrincipalAccessor currentPrincipalAccessor,
     IServiceProvider serviceProvider)
     : base(policyProvider, handlers, logger, contextFactory, evaluator, options)
 {
     _currentPrincipalAccessor = currentPrincipalAccessor;
     ServiceProvider           = serviceProvider;
 }
Exemple #5
0
 public AuthorizationService(
     IAuthorizationPolicyProvider policyProvider,
     IAuthorizationHandlerProvider handlers,
     ILogger <AuthorizationService> logger,
     IAuthorizationHandlerContextFactory contextFactory,
     IAuthorizationEvaluator evaluator,
     IOptions <AuthorizationOptions> options,
     ICurrentPrincipalAccessor currentPrincipalAccessor,
     IServiceProvider serviceProvider)
     : base(policyProvider, handlers, logger, contextFactory, evaluator, options)
 {
     _currentPrincipalAccessor = currentPrincipalAccessor;
     ServiceProvider           = serviceProvider;
 }
 public SheaftIdentityAuthorizeService(
     IHttpClientFactory httpClientFactory,
     IHttpContextAccessor accessor,
     IAuthorizationPolicyProvider policyProvider,
     IAuthorizationHandlerProvider handlers,
     IAuthorizationHandlerContextFactory contextFactory,
     IAuthorizationEvaluator evaluator,
     IOptions <AuthOptions> authOptions,
     IOptions <CacheOptions> cacheOptions,
     IDistributedCache cache)
 {
     _cache             = cache;
     _accessor          = accessor;
     _policyProvider    = policyProvider;
     _handlers          = handlers;
     _contextFactory    = contextFactory;
     _evaluator         = evaluator;
     _authOptions       = authOptions;
     _httpClientFactory = httpClientFactory;
     _cacheOptions      = cacheOptions;
 }
Exemple #7
0
 public OrAuthorizationRequirementHandler(IOptions <AuthorizationOptions> options, Lazy <IAuthorizationHandlerProvider> handlers, IAuthorizationHandlerContextFactory contextFactory)
 {
     _options        = options ?? throw new ArgumentNullException(nameof(options));
     _handlers       = handlers ?? throw new ArgumentNullException(nameof(handlers));
     _contextFactory = contextFactory ?? throw new ArgumentNullException(nameof(contextFactory));
 }
Exemple #8
0
 public MyAuthService(IAuthorizationPolicyProvider policyProvider, IAuthorizationHandlerProvider handlers, ILogger <DefaultAuthorizationService> logger, IAuthorizationHandlerContextFactory contextFactory, IAuthorizationEvaluator evaluator, IOptions <AuthorizationOptions> options)
 {
     this.authBase = new DefaultAuthorizationService(policyProvider, handlers, logger, contextFactory, evaluator, options);
 }
Exemple #9
0
 public InspectAuthorizationService(DefaultAuthorizationService defaultAuthorizationService, IAuthorizationHandlerContextFactory contextFactory, ILogger <InspectAuthorizationService> logger)
 {
     _defaultAuthorizationService = defaultAuthorizationService;
     _contextFactory = contextFactory;
     _logger         = logger;
 }