using System;

namespace Dpz.Core.Infrastructure.RateLimiting;

/// <summary>
/// 单个 IP 的窗口期事件记录
/// 只记录可疑事件(规则命中、空 UA、低版本浏览器、404 等),不记录正常请求
/// </summary>
public class IpAccessRecord
{
    /// <summary>
    /// 当前窗口开始时间
    /// </summary>
    public DateTime WindowStart { get; set; }

    /// <summary>
    /// 当前窗口内的事件次数
    /// </summary>
    public int EventCount { get; set; }

    /// <summary>
    /// 封禁截止时间(未封禁时为 null)
    /// </summary>
    public DateTime? BlockedUntil { get; set; }

    /// <summary>
    /// 最近一次事件时间
    /// </summary>
    public DateTime LastEventTime { get; set; }
}
评论加载中...