认证 · 安全 · API

认证接入后,怎样验收会话、权限与账号停用

用合成账号情境核对登录、退出、过期、权限变化和账号停用,区分页面状态与服务端授权,记录失败和复查动作。

登录后显示头像,只覆盖登录流程的一部分。接入认证服务后,还要验证原会话何时失效、权限变化是否生效,以及账号停用后的访问行为。

以下使用隔离测试账号A/B及合成请求结果,没有真实令牌,本站未接入账号系统。测试应在自有或明确授权的环境执行;认证供应商身份记录与应用权限、会话及业务数据需要分别核对。

先列出应用约定

写明登录回调允许地址、会话模式、服务端授权入口、空闲/绝对过期约定、角色和资源归属、停用与删除的执行状态。JWT 解码只展示载荷,不能验证签名、有效期处理或权限执行;JWT 工具适合核对已脱敏的合成材料。

会话退出或到期需要核对服务端失效行为,权限检查需要覆盖实际请求。这些原则参考 OWASP 会话管理与 授权检查,复核于 2026-10-04。具体超时数值和供应商能力按项目确认。

验收矩阵:从页面到服务端

场景 记录的证据 未达到约定时
登录 回调结果、当前身份、受保护请求 不仅检查头像,核对后端身份
退出 退出响应、原会话再请求、另一标签页行为 原会话仍可读受保护数据时停止确认
到期 服务端时间、约定时限、到期前后请求 仅前端倒计时无效,保留服务端结果
权限变更 A降权后新旧会话的相同操作 未按约定撤权时停止扩大发布
资源隔离 A读取B资源的响应与数据范围 隐藏按钮不足以证明隔离
停用/删除 身份、会话、应用数据与异步任务状态 接受删除不等于清理完成

拒绝访问的具体状态码可以按接口契约为401、403或用于隐藏存在性的404,关键是服务端没有返回不允许的数据或执行操作;不要只根据一个状态码做安全结论。

成功样例:仅确认本次检查范围

合成演练:2026-10-04 10:00 +08:00,应用版本auth-demo
A登录:受保护请求返回A自己的模拟资料
A退出:原会话再请求被拒绝;另一标签页再操作也被拒绝
A降权:约定的撤权窗口后,原管理员操作被拒绝
A访问B订单:被拒绝,响应不含B的数据
结论:这组会话和权限检查符合约定;其他客户端仍待复查

保存请求条件和脱敏结果,不保存会话密钥、Cookie或原始Authorization头。账号权限变更还要核对缓存和撤销策略;在原客户端及新会话中复测,不能只重新登录一次。

失败样例:界面已退出,原会话仍可用

合成失败:退出页显示“已退出”
退出响应:成功
原会话读取受保护订单:200,返回订单数据
是否调用服务端会话撤销:未知
决策:停止确认退出验收;核对失效机制并同条件复测

这个观察说明退出后的访问不符合本例约定,尚不能确定是哪层配置导致。核对服务端会话、令牌撤销、缓存与供应商行为;不要靠清浏览器缓存掩盖旧会话仍可使用的问题。接口排查记录可以保存预期、实际观察与下一步。

账号删除需要单独记录状态

如果删除接口返回202,本例只记录请求已接受。另查账号是否已禁用、会话是否失效、业务数据和第三方副本的处理状态;出现异步失败或状态未知时保留待确认。这里是技术验收范围,不自动判断数据留存或合规义务。

对供应商选择、会话模型和尚未核实的撤销能力,填写选型记录;进入实现前可从认证资源目录查官方入口。停止与回退方案应说明谁恢复哪项配置,以及如何继续拒绝不允许的访问。本站的记录导出不会执行账号操作或替你判定安全通过。