Table of Contents

Class CheckerFeaturesRateLimitSettings

Namespace
SEBT.Portal.Core.AppSettings
Assembly
SEBT.Portal.Core.dll

Configuration settings for rate limiting the public enrollment checker features endpoint. Deliberately a separate policy from EnrollmentCheckRateLimitSettings: every open checker tab polls the features endpoint once a minute, so sharing the enrollment-check partition would let a few tabs behind one NAT (school computer lab, library) drain the per-IP budget that real enrollment checks need.

public class CheckerFeaturesRateLimitSettings : IHaveConfigSectionName
Inheritance
object
CheckerFeaturesRateLimitSettings
Implements

Properties

PermitLimit

Maximum number of features requests allowed per window per IP address. Generous relative to the one-poll-per-minute-per-tab cadence; a 429 only delays banner pickup by a poll cycle.

[Range(1, 1000, ErrorMessage = "PermitLimit must be between 1 and 1000.")]
public int PermitLimit { get; set; }

Property Value

int

SectionName

public static string SectionName { get; }

Property Value

string

WindowMinutes

Time window for rate limiting in minutes.

[Range(0.1, 60, ErrorMessage = "WindowMinutes must be between 0.1 and 60.")]
public double WindowMinutes { get; set; }

Property Value

double