Repository navigation
v1.0.2
安全与健壮性修复包 + 全库文档去 PHP 化。
修复(P1×3 / P2×8)
- redis:缺省
servers曾写死 memcached 端口导致静默错连;补齐 1 秒建连与读写超时(防半开连接无限阻塞) - leeway 上限校验(≤ 86400 秒):挡住在 debug 下 panic / release 下全量过期的配置笔误
- memcached:单台宕机只剔除该台、其余照常服务(每服务器独立连接池 + 确定性哈希路由 + 读写锁并发)
RetryTokenStorage保持 Config 错误类型;无exp令牌blacklist()显式报错(不再假成功)- file 驱动:已存在目录拒绝 group/other 可写 + 写探测;空路径不再落 CWD;空 jti / 超长 hex jti 键护栏
- TOML 空
path归一化;refresh()中不可达的expect消除
安全
JwtConfig的Debug输出打码secret_key;HMAC 算法拒收 PEM 材料(公钥误配即万能伪造)- 新增安全负路径回归锁:篡改签名 / 算法混淆 /
alg:"none"/ future nbf / leeway / PEM 误配
文档
- 全部文档与注释移除 PHP 引用,改按项目自身理由陈述行为取舍;中英 README 同步
- 新增须知:axum
attach时序、is_blacklisted的 fail-open、file 目录位置与权限、memcached 键长上限
工程化
- 性能:Validation 预构建、SQLite
prepare_cached、redis 关闭默认 feature、hex 编码免逐字节分配 - CI 新增门禁:
cargo doc -D warnings、cargo package、core-only + 逐单 feature 编译矩阵(本版本 CI 全绿) - 测试 134(93 单元 + 40 集成 + 1 doctest);redis / memcached 用例在真实服务下运行
变更详情见 CHANGELOG.md;crates.io:jwt-rust 1.0.2