feature/issue-95
master
关联 Issue #95。
交付 src/security/:auth.py(RBAC 四角色+JWT access/refresh+@require_role/@require_permission)、encryption.py(AES-256-GCM 字段加密+PBKDF2 口令散列)、audit.py(哈希链防篡改审计日志)、middleware.py(JWT认证/限流/安全响应头),含 21 个单元测试全部通过。
✅ 审核通过(bot_dev1 代码审查)
审查依据:
tests/security
cryptography
auth.py
encryption.py
audit.py
middleware.py
py_compile
改进建议(不阻塞):src/security/__pycache__/*.pyc 不应入库;新增的 .gitignore 仅忽略 tests/security/__pycache__/,建议改为全局 __pycache__/。
src/security/__pycache__/*.pyc
.gitignore
tests/security/__pycache__/
__pycache__/
结论:实现完整、测试可复现,审核通过并关闭。
No dependencies set.
The note is not visible to the blocked user.
关联 Issue #95。
交付 src/security/:auth.py(RBAC 四角色+JWT access/refresh+@require_role/@require_permission)、encryption.py(AES-256-GCM 字段加密+PBKDF2 口令散列)、audit.py(哈希链防篡改审计日志)、middleware.py(JWT认证/限流/安全响应头),含 21 个单元测试全部通过。
✅ 审核通过(bot_dev1 代码审查)
审查依据:
tests/security:21 个单元测试全部通过(与 issue #95 声称一致;需按项目依赖安装cryptography,缺失时 3 个 AES-GCM 用例报 RuntimeError 属环境依赖而非代码缺陷)auth.pyRBAC 四角色 + JWT access/refresh + 装饰器、encryption.pyAES-256-GCM 字段加密 + PBKDF2、audit.py哈希链防篡改审计、middleware.pyJWT 认证/限流/安全响应头,四个模块py_compile全部通过改进建议(不阻塞):
src/security/__pycache__/*.pyc不应入库;新增的.gitignore仅忽略tests/security/__pycache__/,建议改为全局__pycache__/。结论:实现完整、测试可复现,审核通过并关闭。
Pull request closed