Example #1
0
 public AuthTypeResolveContributor(IHttpContextAccessor httpContextAccessor, IClientPolicyStore clientPolicyStore, ClientRateLimitOptions clientOptions, ClientRateLimitPolicies clientPolicies)
 {
     _clientOptions       = clientOptions;
     _clientPolicies      = clientPolicies;
     _httpContextAccessor = httpContextAccessor;
     _clientPolicyStore   = clientPolicyStore;
 }
 public ClientRateLimitProcessor(ClientRateLimitOptions options,
                                 IRateLimitCounterStore counterStore,
                                 IClientPolicyStore policyStore)
     : base(options, counterStore)
 {
     _options     = options;
     _policyStore = policyStore;
 }
Example #3
0
 public AspNetCoreRateLimitMiddleware(
     RequestDelegate next,
     IOptions <ClientRateLimitOptions> optionsAccessor,
     IClientPolicyStore clientPolicyStore)
 {
     this.next          = next ?? throw new ArgumentNullException(nameof(next));
     _options           = optionsAccessor.Value;
     _clientPolicyStore = clientPolicyStore;
 }
Example #4
0
        public ClientRateLimitProcessor(ClientRateLimitOptions options,
                                        IRateLimitCounterStore counterStore,
                                        IClientPolicyStore policyStore)
        {
            _options      = options;
            _counterStore = counterStore;
            _policyStore  = policyStore;

            _core = new RateLimitCore(false, options, _counterStore);
        }
 public ClientRateLimitProcessor(
     ClientRateLimitOptions options,
     IRateLimitCounterStore counterStore,
     IClientPolicyStore policyStore,
     IRateLimitConfiguration config)
     : base(options, counterStore, new ClientCounterKeyBuilder(options), config)
 {
     _options     = options;
     _policyStore = policyStore;
 }
Example #6
0
 public ClientRateLimitMiddleware(RequestDelegate next,
                                  IRateLimitLoader Loader,
                                  IRateLimitCounterStore counterStore,
                                  IClientPolicyStore policyStore,
                                  IRateLimitConfiguration config,
                                  ILogger <ClientRateLimitMiddleware> logger)
     : base(next, Loader.GetClientRateLimitOptions(), new ClientRateLimitProcessor(Loader.GetClientRateLimitOptions(), counterStore, policyStore, config), config)
 {
     _logger = logger;
 }
 public ClientRateLimitMiddleware(RequestDelegate next,
                                  IOptions <ClientRateLimitOptions> options,
                                  IRateLimitCounterStore counterStore,
                                  IClientPolicyStore policyStore,
                                  IRateLimitConfiguration config,
                                  ILogger <ClientRateLimitMiddleware> logger)
     : base(next, options?.Value, new ClientRateLimitProcessor(options?.Value, counterStore, policyStore, config), config)
 {
     _logger = logger;
 }
 public MyClientRateLimitMiddleware(RequestDelegate next,
                                    IOptions <ClientRateLimitOptions> options,
                                    IRateLimitCounterStore counterStore,
                                    IClientPolicyStore policyStore,
                                    IRateLimitConfiguration config,
                                    ILogger <ClientRateLimitMiddleware> logger)
     : base(next, options, counterStore, policyStore, config, logger)
 {
     _logger = logger;
 }
Example #9
0
 public ClientRateLimitCounterStore(
     IOptions <ClientRateLimitOptions> options,
     IClientRateLimitProcessor clientRateLimitProcessor,
     IRateLimitCounterStore counterStore,
     IClientPolicyStore policyStore)
 {
     _options      = options.Value;
     _processor    = clientRateLimitProcessor;
     _counterStore = counterStore;
     _core         = new RateLimitCore(false, options.Value, _counterStore);
 }
Example #10
0
 public CustomRateLimitConfiguration(IHttpContextAccessor httpContextAccessor, IClientPolicyStore clientPolicyStore, IOptions <IpRateLimitOptions> ipOptions, IOptions <ClientRateLimitOptions> clientOptions, IOptions <ClientRateLimitPolicies> clientPolicies)
 {
     IpRateLimitOptions      = ipOptions?.Value;
     ClientRateLimitOptions  = clientOptions?.Value;
     ClientRateLimitPolicies = clientPolicies?.Value;
     HttpContextAccessor     = httpContextAccessor;
     ClientPolicyStore       = clientPolicyStore;
     ClientResolvers         = new List <IClientResolveContributor>();
     IpResolvers             = new List <IIpResolveContributor>();
     RegisterResolvers();
 }
 public ClientRateLimitProcessor(
     ClientRateLimitOptions options,
     IClientPolicyStore policyStore,
     IProcessingStrategy processingStrategy)
     : base(options)
 {
     _options            = options;
     _policyStore        = policyStore;
     _counterKeyBuilder  = new ClientCounterKeyBuilder(options);
     _processingStrategy = processingStrategy;
 }
 public ClientRateLimitMiddleware(RequestDelegate next,
                                  IOptions <ClientRateLimitOptions> options,
                                  IRateLimitCounterStore counterStore,
                                  IClientPolicyStore policyStore,
                                  ILogger <ClientRateLimitMiddleware> logger
                                  )
 {
     _next      = next;
     _options   = options.Value;
     _logger    = logger;
     _processor = new ClientRateLimitProcessor(_options, counterStore, policyStore);
 }
Example #13
0
        public CustomClientRateLimitMiddleware(
            RequestDelegate next,
            IOptions <ClientRateLimitOptions> options,
            IOptions <ClientRateLimitPolicies> clientPolicies,
            IRateLimitCounterStore counterStore,
            IClientPolicyStore policyStore,

            ILogger <ClientRateLimitMiddleware> logger)
            : base(next, options, counterStore, policyStore, logger)
        {
            if (String.IsNullOrWhiteSpace(options.Value.QuotaExceededMessage))
            {
                throw new InvalidOperationException("API quota exceeded message not set in the config.");
            }

            if (options.Value.HttpStatusCode == default(int))
            {
                throw new InvalidOperationException("API quota exceeded status code message not set in the config.");
            }

            Logger = logger;
            quotaExceededMessage = options.Value.QuotaExceededMessage;
            httpStatusCode       = options.Value.HttpStatusCode;
        }
Example #14
0
 public ClientRateLimitController1(IOptions <ClientRateLimitOptions> optionsAccessor, IClientPolicyStore clientPolicyStore)
 {
     _options           = optionsAccessor.Value;
     _clientPolicyStore = clientPolicyStore;
 }
 public CustomClientRateLimit(RequestDelegate next, IOptions <ClientRateLimitOptions> options, IRateLimitCounterStore counterStore, IClientPolicyStore policyStore, ILogger <ClientRateLimitMiddleware> logger) : base(next, options, counterStore, policyStore, logger)
 {
     this.logger = logger;
 }
 public IpRateLimitSeedStartupService(IIpPolicyStore ipPolicyStore, IClientPolicyStore clientPolicyStore)
 {
     _ipPolicyStore     = ipPolicyStore;
     _clientPolicyStore = clientPolicyStore;
 }
 public UserController(IUserService userService, IClientPolicyStore clientPolicyStore, IOptions <ClientRateLimitOptions> clientRateOptions)
 {
     this.userService            = userService;
     this.clientPolicyStore      = clientPolicyStore;
     this.clientRateLimitOptions = clientRateOptions?.Value;
 }