Published onMarch 3, 2026刷新令牌轮换的设计空间:复用检测、宽限期与客户端持久化顺序的机制账.NETJWTBearer-Token刷新令牌轮换认证安全从 rotate-on-use 与复用检测的第一性原理出发,拆解"宽限期"为何是安全敏感区、为何只能向前轮换不能 fork 兄弟,以及客户端持久化顺序为何是一条隐形契约。
Published onFebruary 24, 2026浏览器会话 Cookie 装不进原生 App:ASP.NET Core 分块 Cookie 与 SecurityStamp 的机制账.NETASP.NET-CoreCookie-认证SecurityStamp机制分析从分块 Cookie、SecurityStamp 校验、原生 Cookie 存储三个机制的交汇,拆解一个无害默认值如何在跨出浏览器边界后翻转成致命链路。
Published onFebruary 17, 2026后台任务的两条正交轴:时间触发与消息触发为什么必须分清.NETMassTransitQuartz模块化单体机制分析把"后台任务"拆成触发语义、进程归属、模块边界三笔账,解释为什么 Quartz 与 MassTransit 不是二选一而是分工,以及边界腐蚀如何把模块化单体拖向大泥球。
Published onFebruary 10, 2026邮件不是网页:当渲染引擎不受你控制,视觉契约该建在哪一层.NET邮件渲染SkiaSharpOutlook机制分析从 Outlook 用 Word 排版引擎这个第一性事实出发,推导出"可见视觉一律服务端栅格成 CID PNG"的渲染契约,并拆解 HiDPI、字体回退、静默 DB 约束等机制交汇处的坑。
Published onJanuary 8, 2026日志和架构测试守的是同一件事:让出问题时查得动、让边界不被悄悄打穿.NETSerilog日志模块化单体架构测试日志和模块边界看似无关,守护的却是同一件事:系统的可治理性。从"边界处记录"和"架构测试当守门人"两个角度拆解为什么靠评审记性守不住。